Module  java.base
软件包  java.lang.annotation

Enum RetentionPolicy

  • All Implemented Interfaces:
    SerializableComparable<RetentionPolicy>


    public enum RetentionPolicy
    extends Enum<RetentionPolicy>
    注释保留政策。 这个枚举类型的常量描述了保留注释的各种策略。 它们与Retention元注释类型一起使用,以指定要保留注释的时间长度。
    从以下版本开始:
    1.5
    • Enum Constant Detail

      • SOURCE

        public static final RetentionPolicy SOURCE
        注释将被编译器丢弃。
      • CLASS

        public static final RetentionPolicy CLASS
        注释将由编译器记录在类文件中,但VM不需要在运行时保留。 这是默认行为。
      • RUNTIME

        public static final RetentionPolicy RUNTIME
        注释将由编译器记录在类文件中,并由VM在运行时保留,因此可以反射读取。
        另请参见:
        AnnotatedElement
    • 方法详细信息

      • values

        public static RetentionPolicy[] values​()
        按照它们声明的顺序返回一个包含此枚举类型常量的数组。 该方法可用于遍历常量如下:
          for (RetentionPolicy c : RetentionPolicy.values())
            System.out.println(c); 
        结果
        一个包含这个枚举类型的常量的数组,按照它们被声明的顺序
      • valueOf

        public static RetentionPolicy valueOf​(String name)
        以指定的名称返回此类型的枚举常量。 字符串必须完全匹配用于声明此类型的枚举常量的标识符。 (不允许使用外来空白字符。)
        参数
        name - 要返回的枚举常量的名称。
        结果
        具有指定名称的枚举常数
        异常
        IllegalArgumentException - 如果此枚举类型没有指定名称的常量
        NullPointerException - if the argument is null