(Anterior) Java 5 / JDK 5

Anotaciones en código fuente -- meta-datos

En el JDK 5 se encuentran tres anotaciones que pueden ser utilizadas directamente :

Anotación Función
Override Utilizado para indicar que el método ha modificado su comportamiento ("override") sobre su superclase.
Deprecated Utilizado para indicar que el uso de determinado elemento no es recomendable o ha dejado de ser actualizado.
SuppressWarnings Permite suprimir mensajes del compilador relacionados con advertencias/avisos.

Debido a la misma gama de anotaciones que pueden ser requeridas en distintas circunstancias, el JDK ofrece los mecanismos para crear anotaciones de cualquier tipo e integrarles lógica personalizada, inclusive ya han empezado a surgir librerías de anotaciones producidas por terceros para uso en proyectos con requerimientos particulares. Sin embargo, debido a que la creación de anotaciones personalizadas implica un proceso extenso e involucrado aquí no será explorada su creación, en lugar, será ilustrado como utilizar las anotaciones base del JDK.

 

import java.util.*;

class Instrumento {
    public void tocar() {
	System.out.println("Instrumento.tocar()");
    }
    public String tipo() {
	return "Instrumento";
    }
    /** 
     * Metodo suplantado ("deprecated") en favor de afinarDeFabrica 
     * @deprecated Utilizar afinarDeFabrica() 
     */
    @Deprecated public void afinar() {}
    public void afinarDeFabrica() {} 
}


class Guitarra extends Instrumento {
    @Override
    public void tocar() {
	System.out.println("Guitarra.tocar()");
    }
    @Override
    public String tipo() { return "Guitarra"; }
    @Override
    public void afinar() {}
}

El grupo de clases anteriores demuestra como la anotación @Override nos ofrece una salvaguarda para detectar si la clase derivada efectivamente ha reimplementado ("override") correctamente los métodos de su superclase. Al colocar esta anotación en los métodos de la clase derivada, el compilador verifica que dichos métodos existan en la superclase, de esta manera, si se escribe incorrectamente el método en la clase derivada o se tiene una jerarquía de herencia compleja, este tipo de error que puede ser difícil de encontrar una vez en ejecución el programa, es detectado al momento de compilación.

La anotación @Deprecated permite marcar un método como obsoleto o antiguo y que el usuario de dicha superclase sea notificado de esta circunstancia al momento de compilación . En versiones anteriores a Java 5, la única manera en que un usuario podía percatarse de utilizar una librería o método marcado como "deprecated" era mediante la documentación de dicha librería, ahora a través de la anotación @Deprecated es posible detectar este hecho al momento de compilar.

Menú Curso

Objetos, Java y JDK

Composición, Clases y Librerías("Packages").

Variables, Constructores, Métodos y Comentarios.

Herencias ("Inheritance"), Condicionales y Ciclos

Operadores, Errores y Datos de Entrada/"Streams".

Interfases, Arreglos y Polimorfismo.

Collections Framework, "Threads", Garbage Collection y "Assertions".

Java 5 / JDK 5 .

Instalación Software.

Codigo.