Portada » Noticias » Las anotaciones en Java al detalle
Compartir

Las anotaciones en Java al detalle

Las anotaciones en Java al detalle

Como lenguaje de programación y plataforma informática Java, además de popular, es rápido, seguro y fiable. Y es que su fama es debida a algo, y todas esas virtudes que le adornan no son más que la mera realidad. Hay muchas aplicaciones y sitios web que no funcionarán a menos que tengan Java instalado, y cada día se crean más y más. ¡Ahí es nada! Hoy te lo contamos todo sobre las anotaciones en Java al detalle. ¡Vamos allá!

 

¿Qué son las anotaciones en Java?

Una anotación en Java es aquella característica que le permite incrustar información suplementaria en un archivo fuente. Esta información no cambia las acciones de un programa, pero puede ser utilizada por varias herramientas, tanto durante el desarrollo como durante el despliegue.

Una anotación en Java puede ser procesada por un generador de código fuente, por el compilador o por una herramienta de despliegue. En ocasiones, las anotaciones en Java también son llamadas metadata, pero el término anotación es el más descriptivo y más utilizado.

Características generales de las anotaciones en Java

  • Las anotaciones de Java comienzan con ‘@’.
  • Las anotaciones Java no cambian la actividad de un programa ordenado.
  • Ayudan a relacionar metadatos (datos) con los componentes del programa, es decir, constructores, estrategias, clases, etc.
  • Las anotaciones en Java no son comentarios sin adulteraciones, ya que pueden cambiar la forma en que el compilador trata el programa.

Anotaciones estándar en Java

Si dominas la programación sabrás que Java define muchas anotaciones incorporadas. La mayoría son especializadas, pero nueve son de propósito general.

  • Cuatro importados de java.lang.annotation: @Retention, @Documented, @Target, y @Inherited
  • Cinco de java.lang: @Override, @Deprecated, @SafeVarargs, @FunctionalInterface, y @SuppressWarnings.

@Retention

Especifica la política de retención que se asociará con la anotación. La política de retención determina el tiempo que una anotación está presente durante el proceso de compilación y despliegue.

@Documented

Una anotación de marcador que indica a una herramienta que se debe documentar una anotación. Está diseñado para ser utilizado sólo como una anotación en una declaración de anotación.

@Target

Especifica los tipos de elementos a los que se puede aplicar una anotación. Está diseñado para usarse solo como una anotación en otra anotación. @Target toma un argumento, que debe ser una constante o array de constantes de la enumeración ElementType, que define varias constantes, como CONSTRUCTOR, FIELD y METHOD. El argumento determina los tipos de elementos a los que se puede aplicar la anotación. Si @Target no está especificado, la anotación se puede usar en cualquier declaración.

@Inherited

Una anotación de marcador que hace que la anotación de una superclase sea heredada por una subclase.

@Override

Un método anotado con @Override debe anular un método de una superclase. Si no lo hace, se producirá un error en tiempo de compilación. Se utiliza para asegurar que un método de superclase esté anulado, y no simplemente sobrecargado. Esta es una anotación de marcador.

@Deprecated

Una anotación que indica que un elemento está obsoleto y no se recomienda su uso. A partir de JDK 9, @Deprecated se ha mejorado para permitir que se especifique la versión de Java en la que se produjo la obsolescencia y si el elemento obsoleto va a ser eliminado.

@SafeVarargs

Una anotación de marcador que indica que no se producen acciones inseguras relacionadas con un parámetro varargs en un método o constructor. Puede ser aplicado a métodos y constructores, con varias restricciones.

@FunctionalInterface

Específica que se deben suprimir una o más advertencias que pueda emitir el compilador. Las advertencias a suprimir se especifican por nombre, en forma de strirg.

@SuppressWarnings

Una anotación de marcador que se utiliza para anotar una declaración de interfaz. Indica que la interfaz anotada es una interfaz funcional, que es una interfaz que contiene un único método abstracto. Los interfaces funcionales son utilizados por las expresiones lambda. Es importante entender que @Functionallntertace es puramente informativo. Cualquier interfaz con exactamente un método abstracto es, por definición, una interfaz funcional.

Las anotaciones son una forma de metadatos que proporcionan datos sobre un programa que no forma parte del programa en sí. Las anotaciones no tienen ningún efecto directo en el funcionamiento del código que anotan.

 

Usos principales de las anotaciones en Java

Información para el compilador

El compilador puede utilizar las anotaciones para detectar errores o suprimir las advertencias.

Procesamiento en tiempo de compilación y tiempo de implementación

Las herramientas de software pueden procesar información de anotaciones para generar código, archivos XML, etc.

Procesamiento de tiempo de ejecución

Algunas anotaciones están disponibles para ser examinadas en tiempo de ejecución. Las anotaciones en Java se pueden aplicar a declaraciones: declaraciones de clases, campos, métodos y otros elementos del programa. Cuando se utiliza en una declaración, cada anotación suele aparecer, por convención, en su propia línea.

A partir de la versión Java SE 8, las anotaciones también se pueden aplicar al uso de tipos.

Como habrás podido comprobar Java da para mucho, y es que por algo es el lenguaje de programación universal, ¿no?. Pues bien, si quieres saberlo absolutamente todo sobre Java y dominarlo como todo un experto, en Tokio hacemos realidad tus deseos con nuestro curso de Programador Java. No olvides que esta es una profesión muy bien remunerada y con un futuro inmejorable. No pierdas ni un minuto y reserva ya tu plaza. ¡Te esperamos!

Solicita información gratuita.
Tokio. New Technology School
Recibe más información
Obtener toda la información
Utilizamos cookies propias y de terceros para realizar el análisis de la navegación de los usuarios y mejorar nuestros servicios. Si continúa navegando, consideramos que acepta su uso. Puede obtener más información, o bien conocer cómo cambiar la configuración, pulsando en