Uses of Class
java.lang.annotation.Retention

Packages that use Retention 
Package Description
java.beans
Contains classes related to developing beans -- components based on the JavaBeans™ architecture.
java.lang
Provides classes that are fundamental to the design of the Java programming language.
java.lang.annotation
Provides library support for the Java programming language annotation facility.
javax.annotation.processing
Facilities for declaring annotation processors and for allowing annotation processors to communicate with an annotation processing tool environment.
javax.management
Provides the core classes for the Java Management Extensions.
javax.swing
Provides a set of "lightweight" (all-Java language) components that, to the maximum degree possible, work the same on all platforms.
jdk.jfr
This package provides classes to create events and control Flight Recorder.
  • Uses of Retention in java.beans

    Classes in java.beans with annotations of type Retention 
    Modifier and Type Class Description
    interface  BeanProperty
    An annotation used to specify some property-related information for the automatically generated BeanInfo classes.
    interface  ConstructorProperties
    An annotation on a constructor that shows how the parameters of that constructor correspond to the constructed object's getter methods.
    interface  JavaBean
    An annotation used to specify some class-related information for the automatically generated BeanInfo classes.
    interface  Transient
    Indicates that an attribute called "transient" should be declared with the given value when the Introspector constructs a PropertyDescriptor or EventSetDescriptor classes associated with the annotated code element.
  • Uses of Retention in java.lang

    Classes in java.lang with annotations of type Retention 
    Modifier and Type Class Description
    interface  Deprecated
    A program element annotated @Deprecated is one that programmers are discouraged from using.
    interface  FunctionalInterface
    An informative annotation type used to indicate that an interface type declaration is intended to be a functional interface as defined by the Java Language Specification.
    interface  Override
    Indicates that a method declaration is intended to override a method declaration in a supertype.
    interface  SafeVarargs
    A programmer assertion that the body of the annotated method or constructor does not perform potentially unsafe operations on its varargs parameter.
    interface  SuppressWarnings
    Indicates that the named compiler warnings should be suppressed in the annotated element (and in all program elements contained in the annotated element).
  • Uses of Retention in java.lang.annotation

    Classes in java.lang.annotation with annotations of type Retention 
    Modifier and Type Class Description
    interface  Documented
    If the annotation @Documented is present on the declaration of an annotation type A, then any @A annotation on an element is considered part of the element's public contract.
    interface  Inherited
    Indicates that an annotation type is automatically inherited.
    interface  Native
    Indicates that a field defining a constant value may be referenced from native code.
    interface  Repeatable
    The annotation type java.lang.annotation.Repeatable is used to indicate that the annotation type whose declaration it (meta-)annotates is repeatable.
    interface  Retention
    Indicates how long annotations with the annotated type are to be retained.
    interface  Target
    Indicates the contexts in which an annotation type is applicable.
  • Uses of Retention in javax.annotation.processing

    Classes in javax.annotation.processing with annotations of type Retention 
    Modifier and Type Class Description
    interface  Generated
    The Generated annotation is used to mark source code that has been generated.
    interface  SupportedAnnotationTypes
    An annotation used to indicate what annotation types an annotation processor supports.
    interface  SupportedOptions
    An annotation used to indicate what options an annotation processor supports.
    interface  SupportedSourceVersion
    An annotation used to indicate the latest source version an annotation processor supports.
  • Uses of Retention in javax.management

    Classes in javax.management with annotations of type Retention 
    Modifier and Type Class Description
    interface  ConstructorParameters
    An annotation on a constructor that shows how the parameters of that constructor correspond to the constructed object's getter methods.
    interface  DescriptorKey
    Meta-annotation that describes how an annotation element relates to a field in a Descriptor.
    interface  MXBean
    Annotation to mark an interface explicitly as being an MXBean interface, or as not being an MXBean interface.
  • Uses of Retention in javax.swing

    Classes in javax.swing with annotations of type Retention 
    Modifier and Type Class Description
    interface  SwingContainer
    An annotation used to specify some swing-related information for the automatically generated BeanInfo classes.
  • Uses of Retention in jdk.jfr

    Classes in jdk.jfr with annotations of type Retention 
    Modifier and Type Class Description
    interface  BooleanFlag
    Event field annotation, specifies that the value is a boolean flag, a true or false value
    interface  Category
    Event annotation, to associate the event type with a category, in the format of a human-readable path.
    interface  ContentType
    Meta annotation, specifies that an annotation represents a content type, such as a time span or a frequency.
    interface  DataAmount
    Event field annotation, specifies that a value represents an amount of data (for example, bytes).
    interface  Description
    Annotation that describes an element by using a sentence or two.
    interface  Enabled
    Event annotation, determines if an event should be enabled by default.
    interface  Experimental
    Annotation that specifies that an element is experimental and may change without notice.
    interface  Frequency
    Event field annotation, specifies that the value is a frequency, measured in Hz.
    interface  Label
    Annotation that sets a human-readable name for an element (for example, "Maximum Throughput").
    interface  MemoryAddress
    Event field annotation, specifies that the value is a memory address.
    interface  MetadataDefinition
    Meta annotation for defining new types of event metadata.
    interface  Name
    Annotation that overrides the default name for an element (for example, when the default package for an event is not appropriate).
    interface  Percentage
    Event field annotation to use on fractions, typically between 0.0 and 1.0, to specify that the value is a percentage.
    interface  Period
    Event annotation, specifies the default setting value for a periodic event.
    interface  Registered
    Event annotation, for programmatic event registration.
    interface  Relational
    Meta annotation for relational annotations, to be used on an annotation.
    interface  SettingDefinition
    Annotation that specifies that a method in an event class should be used to filter out events.
    interface  StackTrace
    Event annotation, determines whether an event by default has a stack trace or not.
    interface  Threshold
    Event annotation, specifies the default duration below which an event is not recorded (for example, "20 ms").
    interface  Timespan
    Event field annotation, specifies that the value is a duration.
    interface  Timestamp
    Event field annotation, specifies that the value is a point in time.
    interface  TransitionFrom
    Event field annotation, specifies that the event transitioned from a thread.
    interface  TransitionTo
    Event field annotation, specifies that the event will soon transition to a thread.
    interface  Unsigned
    Event field annotation, specifies that the value is of an unsigned data type.