@interface注解类定义的几点思考

来源:互联网 发布:brew install java 编辑:程序博客网 时间:2024/05/17 07:39

@interface符号用来定义一个注解类,诸如@Override注解, 它为类或方法添加附加的处理提供

了一种标记方法,但是注解类也需要添加注解,以便JDK底层提供支持,这种注解称为元注解

三种比较常见的元注解: Retention、Target、Documented

1)Retention  用来标记注解的作用范围, 有一个属性值value,是枚举类型RetentionPolicy,包括三个值 CLASS  RUNTIME   SOURCE,分别表示注解信息存在

  所标记对象或方法的阶段,CLASS表示注解信息会存在class(字节码)文件中,但不会被虚拟机加载,RUNTIME表示注解信息会

  随虚拟机一同被虚拟机加载,SOURCE表示注解只会存在源文件中

2)Target  用来标记注解的作用类型 ,有一个属性值value,是枚举类型ElementType,包括若干个值, FIELD  METHOD PACKAGE PARAMETER TYPE

3)Documented  用来标记该注解类会被javadoc工具处理,生成类似于jdkapi样式的html文档


 偶然研究框架源码,初遇之,不解,记之!

0 0