Spec-Zone.ru › OpenJDK 24

Интерфейс Аннотации

public sealed interface Annotation
Моделирует структуру annotation (JVMS 4.7.16) или часть структуры type_annotation (JVMS 4.7.20). Эта модель указывает интерфейс аннотации и набор пар "элемент-значение".

Эта модель может воссоздать аннотацию, зная расположение моделируемой структуры в файле class и определение интерфейса аннотации.

Два объекта Annotation должны быть сравнены с помощью метода equals.

Примечание API:
Для Java-программ расположение моделируемой структуры указывает элемент исходного кода или тип (JLS 9.7.4), на котором отображается воссозданная аннотация, а определение интерфейса аннотации определяет, содержат ли воссозданные аннотации элементы с значениями по умолчанию (JLS 9.6.2), и является ли воссозданная аннотация контейнерной аннотацией для нескольких аннотаций (JLS 9.7.5).
С:
24
См. также:
  • Annotation
  • Аннотации в основной рефлексии
  • TypeAnnotation
  • RuntimeVisibleAnnotationsAttribute
  • RuntimeInvisibleAnnotationsAttribute
  • RuntimeVisibleParameterAnnotationsAttribute
  • RuntimeInvisibleParameterAnnotationsAttribute

Краткое описание методов

Модификатор и тип Метод Описание
Utf8Entry className()
Возвращает запись константного пула, содержащую строку-дескриптор интерфейса аннотации.
default ClassDesc classSymbol()
Возвращает интерфейс аннотации в виде символического дескриптора.
List<AnnotationElement> elements()
Возвращает пары "элемент-значение" аннотации.
static Annotation of(Utf8Entry annotationClass, AnnotationElement... elements)
Возвращает аннотацию.
static Annotation of(Utf8Entry annotationClass, List<AnnotationElement> elements)
Возвращает аннотацию.
static Annotation of(ClassDesc annotationClass, AnnotationElement... elements)
Возвращает аннотацию.
static Annotation of(ClassDesc annotationClass, List<AnnotationElement> elements)
Возвращает аннотацию.

Подробное описание методов

className

Utf8Entry className()
Возвращает запись константного пула, содержащую строку-дескриптор интерфейса аннотации.
Возвращает:
запись константного пула, содержащую строку-дескриптор интерфейса аннотации
См. также:
  • Annotation.annotationType()

classSymbol

default ClassDesc classSymbol()
Возвращает интерфейс аннотации в виде символического дескриптора.
Возвращает:
интерфейс аннотации в виде символического дескриптора
См. также:
  • Annotation.annotationType()

elements

List<AnnotationElement> elements()
Возвращает пары "элемент-значение" аннотации.
Возвращает:
пары "элемент-значение" аннотации

of

static Annotation of(Utf8Entry annotationClass, List<AnnotationElement> elements)
Возвращает аннотацию.
Параметры:
annotationClass - запись константного пула, содержащая строку-дескриптор интерфейса аннотации
elements - пары "элемент-значение" аннотации
Возвращает:
аннотацию

of

static Annotation of(Utf8Entry annotationClass, AnnotationElement... elements)
Возвращает аннотацию.
Параметры:
annotationClass - запись константного пула, содержащая строку-дескриптор интерфейса аннотации
elements - пары "элемент-значение" аннотации
Возвращает:
аннотацию

of

static Annotation of(ClassDesc annotationClass, List<AnnotationElement> elements)
Возвращает аннотацию.
Параметры:
annotationClass - дескриптор интерфейса аннотации
elements - пары "элемент-значение" аннотации
Возвращает:
аннотацию

of

static Annotation of(ClassDesc annotationClass, AnnotationElement... elements)
Возвращает аннотацию.
Параметры:
annotationClass - дескриптор интерфейса аннотации
elements - пары "элемент-значение" аннотации
Возвращает:
аннотацию

© 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://download.java.net/java/early_access/jdk24/docs/api/java.base/java/lang/classfile/Annotation.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API