Mega Code Archive

 
Categories / Java / Language Basics
 

An annotation type declaration and include defaults

import java.lang.annotation.*;  import java.lang.reflect.*;    @Retention(RetentionPolicy.RUNTIME)   @interface MyAnno {    String str() default "Testing";    int val() default 9000;  }    public class Meta3 {      // Annotate a method using the default values.    @MyAnno()    public static void myMeth() {      Meta3 ob = new Meta3();        // Obtain the annotation for this method      // and display the values of the members.      try {        Class c = ob.getClass();          Method m = c.getMethod("myMeth");          MyAnno anno = m.getAnnotation(MyAnno.class);           System.out.println(anno.str() + " " + anno.val());      } catch (NoSuchMethodException exc) {         System.out.println("Method Not Found.");      }    }      public static void main(String args[]) {      myMeth();    }  }