Java自定义annotation的使用,大家先看传值部分。
例子:
import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; //自定义Annotatiation //设置注解的保存范围,这是个出现在自定义注解里面的一个注解, //它的范围有三种, //RUNTIME:源文件、class文件、JVM。这是比较常用的,也是最重要的。 //CLASS:源文件、class文件 //SOURCE:源文件 @Retention(RetentionPolicy.RUNTIME) public @interface MyAnno {//这个注解规定了五个参数,在调用的时候其中默认的可以传参数也可以不传参数 public String value();//参数1,字符串 public int value2();//参数2,int类型 public String[] value3();//字符串数组 public String value4() default "默认值";//字符串数组 public MyEnum value5();//规定annotation里面必须是枚举形 }
看看怎么调用的?
//自定义annotation传递参数,有默认值的无需传递参数 @MyAnno(value="fff",value2=111,value3="{a,b}",value5=MyEnum.BLUE) public class UseMyAnno { } //枚举类型取固定的值 enum MyEnum{ RED,GREEN,BLUE }
看看吧,注解传参数非常简单,可以是各种类型的。