Interface RuntimeVisibleAnnotationsAttribute

All Superinterfaces:
Attribute<RuntimeVisibleAnnotationsAttribute>, ClassElement, ClassFileElement, FieldElement, MethodElement

public sealed interface RuntimeVisibleAnnotationsAttribute extends Attribute<RuntimeVisibleAnnotationsAttribute>, ClassElement, MethodElement, FieldElement
Models the RuntimeVisibleAnnotations attribute (JVMS ), which stores declaration annotations on this structure that are visible to both class file consumers and core reflection.

This attribute appears on classes, fields, methods, and record components, and does not permit multiple instances in one structure. It has a data dependency on the constant pool.

The attribute was introduced in the Java SE Platform version 5.0, major version 49.

Since:
24
See Also:
  • Method Details

    • annotations

      List<Annotation> annotations()
      Returns the run-time visible declaration annotations on this structure.
      Returns:
      the run-time visible declaration annotations on this structure
    • of

      Returns a RuntimeVisibleAnnotations attribute.
      Parameters:
      annotations - the annotations
      Returns:
      a RuntimeVisibleAnnotations attribute
      Throws:
      IllegalArgumentException - if the number of annotations exceeds the limit of u2
    • of

      static RuntimeVisibleAnnotationsAttribute of(Annotation... annotations)
      Returns a RuntimeVisibleAnnotations attribute.
      Parameters:
      annotations - the annotations
      Returns:
      a RuntimeVisibleAnnotations attribute
      Throws:
      IllegalArgumentException - if the number of annotations exceeds the limit of u2