菜鸟程序猿之自定义注解

相信很多猿友都知道,在自定义注解的时候,需要加上三个元注解,如图是我自定义的一个注解:

 其中:

Documented:用于标明这个注解应该被 javadoc工具记录. 默认情况下,javadoc是不包括注解的. 但如果声明注解时指定了 @Documented,则它会被 javadoc 之类的工具处理, 所以注解类型信息也会被包括在生成的文档中。

Target:用于标明自定义的注解可以加在哪些地方,比如ElemenetType.TYPE(类)、ElemenetType.METHOD(方法)、ElemenetType.FILED(属性)等等,并且支持以数组的方式存放多个元素。

Retention:定义该注解的生命周期,其通常有三个值。

     1.RetentionPolicy.SOURCE —— 这种类型的Annotations只在源代码级别保留,编译时就会被忽略;
     2.RetentionPolicy.CLASS —— 这种类型的Annotations编译时被保留,在class文件中存在,但JVM将会忽略;
     3.RetentionPolicy.RUNTIME —— 这种类型的Annotations将被JVM保留,所以他们能在运行时被JVM或其他使用反射机制的代码所读取和使用。

猜你喜欢

转载自blog.csdn.net/yxh13521338301/article/details/81201534
今日推荐