Класс CustomAttribute<T extends 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, чтобы пользовательские атрибуты можно было прочитать. Методы доступа к пользовательским атрибутам, прочитанным из файлов class, могут выбрасывать IllegalArgumentException, если модель атрибута вычисляется лениво и при вычислении обнаруживается некорректный формат файла class для атрибута.
- С версии:
- 24
- См. также:
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Конструктор для вызова из подклассов. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
final AttributeMapper |
attributeMapper() |
Возвращает AttributeMapper, связанный с этим атрибутом. |
Utf8Entry |
attributeName() |
Возвращает имя атрибута. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создаёт и возвращает копию этого объекта. |
boolean |
equals |
Указывает, является ли другой объект «равным» этому объекту. |
protected void |
finalize() |
Устарел, подлежит удалению: этот элемент API подлежит удалению в будущей версии. Финализация устарела и подлежит удалению в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
String |
toString() |
Возвращает строковое представление объекта. |
final void |
wait() |
Заставляет текущий поток ожидать, пока он не будет разбужен, обычно посредством уведомления или прерывания. |
final void |
wait |
Заставляет текущий поток ожидать, пока он не будет разбужен, обычно посредством уведомления или прерывания, либо пока не истечёт заданный промежуток реального времени. |
final void |
wait |
Заставляет текущий поток ожидать, пока он не будет разбужен, обычно посредством уведомления или прерывания, либо пока не истечёт заданный промежуток реального времени. |
Подробное описание конструкторов
CustomAttribute
protected CustomAttribute(AttributeMapper<T> mapper)
- Параметры:
-
mapper- сопоставитель атрибутов
Подробное описание методов
attributeMapper
public final AttributeMapper<T> attributeMapper()
AttributeAttributeMapper, связанный с этим атрибутом.- Определён в:
-
attributeMapperв интерфейсеAttribute<T extends CustomAttribute<T>> - Возвращает:
AttributeMapper, связанный с этим атрибутом
attributeName
public Utf8Entry attributeName()
attributeMapper().name(). Если этот атрибут прочитан из файла class, данный метод возвращает Utf8Entry, указывающую имя атрибута в файле class.
- Определён в:
-
attributeNameв интерфейсеAttribute<T extends CustomAttribute<T>> - Требования к реализации:
- Реализация по умолчанию возвращает
Utf8Entry, пригодную только для записи и, возможно, непривязанную. Подклассы, представляющие атрибуты, прочитанные из файловclass, должны переопределять этот метод. - Возвращает:
- имя атрибута
- См. также:
© 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.