随时随地阅读更多技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666)、QQ技术交流群(183198395)。
结构
java.lang.annotation
枚举 RetentionPolicy
java.lang.Object
java.lang.Enum<RetentionPolicy>
java.lang.annotation.RetentionPolicy
所有已实现的接口:
Serializable, Comparable<RetentionPolicy>
描述
public enum RetentionPolicy extends Enum<RetentionPolicy>
注释保留策略。此枚举类型的常量描述保留注释的不同策略。它们与
Retention
元注释类型一起使用,以指定保留多长的注释。
从以下版本开始:1.5
枚举常量
1、public static final RetentionPolicy SOURCE 编译器要丢弃的注释。
2、public static final RetentionPolicy CLASS 编译器将把注释记录在类文件中,但在运行时 VM 不需要保留注释。这是默认的行为。
3、public static final RetentionPolicy RUNTIME 编译器将把注释记录在类文件中,在运行时 VM 将保留注释,因此可以反射性地读取。
另请参见:
AnnotatedElement
方法详细
1、public static final RetentionPolicy[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
for(RetentionPolicy c : RetentionPolicy.values())
System.out.println(c);
返回:an array containing the constants of this enum type, in the order they are declared
2、public static RetentionPolicy valueOf(String name)
返回带有指定名称的该类型的枚举常量。字符串必须与用于声明该类型的枚举常量的标识符完全匹配。(不允许有多余的空格。)
参数:
指定要返回的枚举常量的名称。
-
返回:
返回带有指定名称的枚举常量
抛出:
如果该枚举类型没有带有指定名称的常量,
- 则抛出 IllegalArgumentException