Prácticamente todos los dias cuando programamos con Java hacemos uso de anotaciones . Algunas de ellas nos son muy sencillas de manejar y otras no tanto .Sin embargo casi nunca nos tenemos que preocupar por como “crear” nuestras propias anotaciones . Este es un tema importante a la hora de desarrollar frameworks pero también a la hora de entender como las anotaciones funcionan.Vamos a dedicar algunos post a este tema. En este primer post vamos a ver como definir una anotación sencilla y usarla para marcar un método.Como punto de partida tenemos un sencillo programa con un método main y un método “MetodoHola” que es invocado desde main.
A continuación mostramos su código fuente
public class Principal001 { public static void main(String[] args) { mensaje(); } public static void mensaje() { System.out.println("hola desde un metodo anotado"); } }
Una vez tenemos el código fuente vamos a construir una anotación sencilla que nos permite marcar el método.
Para definir una anotación el código a construir se parece mucho al de un interface. Con la salvedad de que añade una @.
public @interface MarcarMetodo { }
Una vez creada la anotación podemos utilizarla en nuestro programa para marcar un método.
public class Principal001 { public static void main(String[] args) { mensaje(); } @MarcarMetodo public static void mensaje() { System.out.println("hola desde un metodo anotado"); } }
Acabamos de construir la anotación mas sencilla de todas. Sin embargo habitualmente las anotaciones soportan parámetros y la nuestra es tan sencilla que no tiene ninguno .Vamos a modificar el código de la anotación para que soporte un parámetro.
public @interface MarcarMetodo { String descripcion(); }
Demonos cuenta que la anotación añade un método que nosotros luego podremos usar en nuestro como propiedad .
public class Principal001 { public static void main(String[] args) { mensaje(); } @MarcarMetodo(descripcion = "primera anotacion") public static void mensaje() { System.out.println("hola desde un metodo anotado"); } }
Realizada esta operación ya tenemos construida nuestra primera anotación.
Muy bueno!!! Como se puede hacer para levantar todas las clases anotadas en un proyecto?
Gracias, saludos.
En breve escribiré de eso 🙂