Serializable
, Comparable<RetentionPolicy>
, Constable
public enum RetentionPolicy extends Enum<RetentionPolicy>
Retention
meta-annotation interface to specify how long annotations are to be retained.Enum.EnumDesc<E extends Enum<E>>
Enum Constant | Description |
---|---|
CLASS |
Annotations are to be recorded in the class file by the compiler but need not be retained by the VM at run time. |
RUNTIME |
Annotations are to be recorded in the class file by the compiler and retained by the VM at run time, so they may be read reflectively. |
SOURCE |
Annotations are to be discarded by the compiler. |
Modifier and Type | Method | Description |
---|---|---|
static RetentionPolicy |
valueOf |
Returns the enum constant of this class with the specified name. |
static RetentionPolicy[] |
values() |
Returns an array containing the constants of this enum class, in the order they are declared. |
public static final RetentionPolicy SOURCE
public static final RetentionPolicy CLASS
public static final RetentionPolicy RUNTIME
public static RetentionPolicy[] values()
public static RetentionPolicy valueOf(String name)
name
- the name of the enum constant to be returned.IllegalArgumentException
- if this enum class has no constant with the specified nameNullPointerException
- if the argument is null
© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/annotation/RetentionPolicy.html