W3cubDocs

/OpenJDK 25

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 4.7.16), 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.

See Java Virtual Machine Specification:
4.7.16 The RuntimeVisibleAnnotations Attribute
Since:
24
See Also:

Method Summary

Modifier and Type Method Description
List<Annotation> annotations()
Returns the run-time visible declaration annotations on this structure.
static RuntimeVisibleAnnotationsAttribute of(Annotation... annotations)
Returns a RuntimeVisibleAnnotations attribute.
static RuntimeVisibleAnnotationsAttribute of(List<Annotation> annotations)
Returns a RuntimeVisibleAnnotations attribute.

Methods declared in interface Attribute

attributeMapper, attributeName

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

static RuntimeVisibleAnnotationsAttribute of(List<Annotation> annotations)
Returns a RuntimeVisibleAnnotations attribute.
Parameters:
annotations - the annotations
Returns:
a RuntimeVisibleAnnotations attribute

of

static RuntimeVisibleAnnotationsAttribute of(Annotation... annotations)
Returns a RuntimeVisibleAnnotations attribute.
Parameters:
annotations - the annotations
Returns:
a RuntimeVisibleAnnotations attribute

© 1993, 2025, 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/25/docs/api/java.base/java/lang/classfile/attribute/RuntimeVisibleAnnotationsAttribute.html