java中@Retention是什么?
说明
1、@Retention定义了Annotation保留的时间长短:一些Annotation只出现在源代码中,被编译器抛弃的另一些被编译在class文件中的Annotation可能被虚拟机忽视,另一些被编译在class文件中(请注意不要影响class的执行,因为Annotation和class在使用中被分离)。使用这个meta-Annotation可以限制Annotation的生命周期。
作用
2、表示需要在哪个水平保存该注释信息,用于说明注释的生命周期,即说明的注释在哪个范围内有效。
实例
代码语言:javascript复制@Target({ElementType.TYPE}) //用在描述类、接口或enum
@Retention(RetentionPolicy.RUNTIME) //运行时有效
public @interface MyClassAnnotation {
String value(); //这个MyClassAnnotation注解有个value属性,将来可以设置/获取值
}
以上就是java中@Retention的介绍,希望对大家有所帮助。