Spec-Zone.ru › OpenJDK 24

Класс CustomAttribute<T extends CustomAttribute<T>>

java.lang.Object
java.lang.classfile.CustomAttribute<T>
Параметры типа:
T - тип пользовательского атрибута
Все реализованные интерфейсы:
Attribute<T>, ClassElement, ClassFileElement, CodeElement, FieldElement, MethodElement
public abstract non-sealed class CustomAttribute<T extends CustomAttribute<T>> extends Object implements Attribute<T>, CodeElement, ClassElement, MethodElement, FieldElement
Моделирует пользовательский атрибут в файле class. Модели API для пользовательских атрибутов должны расширять этот класс. Пользовательский атрибут также должен иметь определённый AttributeMapper, который будет возвращён методом attributeMapper() и зарегистрирован в ClassFile.AttributeMapperOption, чтобы пользовательские атрибуты можно было читать.

Пользовательские атрибуты в настоящее время не отображаются при обходе CodeModel.

Методы доступа к пользовательским атрибутам, считываемые из файлов class, могут вызывать IllegalArgumentException, если модель атрибута вычисляется лениво, а вычисление обнаруживает некорректный формат файла class для атрибута.

Since:
24
См. также:
  • java.lang.classfile.attribute

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

CustomAttribute(AttributeMapper<T> mapper)
Модификатор Конструктор Описание
protected
Конструктор для вызова подклассами.

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

Модификатор и тип Метод Описание
final AttributeMapper<T> attributeMapper()
Возвращает AttributeMapper, связанный с этим атрибутом.
Utf8Entry attributeName()
Возвращает имя атрибута.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

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

CustomAttribute

protected CustomAttribute(AttributeMapper<T> mapper)
Конструктор для вызова подклассами.
Параметры:
mapper - маппер атрибутов

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

attributeMapper

public final AttributeMapper<T> attributeMapper()
Описание, скопированное из интерфейса: Attribute
Возвращает AttributeMapper, связанный с этим атрибутом.
Определено в:
attributeMapper в интерфейсе Attribute<T extends CustomAttribute<T>>
Возвращает:
связанный с этим атрибутом AttributeMapper

attributeName

public Utf8Entry attributeName()
Возвращает имя атрибута. Значение строки строки имени эквивалентно значению attributeMapper().name().

Если этот атрибут считывается из файла class, этот метод возвращает Utf8Entry, указывающий имя атрибута в файле class.

Определено в:
attributeName в интерфейсе Attribute<T extends CustomAttribute<T>>
Требования реализации:
Базовая реализация возвращает Utf8Entry, подходящий только для записи, который может быть непривязанным. Подклассы, представляющие атрибуты, считываемые из файлов class, должны переопределять этот метод.
Возвращает:
имя атрибута
См. также:
  • AttributeMapper.readAttribute(java.lang.classfile.AttributedElement, java.lang.classfile.ClassReader, int)

© 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/CustomAttribute.html

Spec-Zone.ru

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