Spec-Zone.ru › OpenJDK 27

Интерфейс FieldModel

Все суперинтерфейсы:
AttributedElement, ClassElement, ClassFileElement, CompoundElement<FieldElement>, Iterable<FieldElement>
public sealed interface FieldModel extends CompoundElement<FieldElement>, AttributedElement, ClassElement
Описывает поле. Поле можно рассматривать как композицию FieldElement или обращаться к нему напрямую с помощью методов доступа, если нужны только отдельные его части.

Поля можно получить из ClassModel.fields() или при обходе элементов-членов класса.

Основной способ создания полей — ClassBuilder.withField(String, ClassDesc, Consumer). Метод ClassBuilder.transformField(FieldModel, FieldTransform) позволяет создать новое поле, выборочно обрабатывая элементы исходного поля и направляя результаты в построитель поля.

Все атрибуты поля доступны как элементы-члены.

См. Спецификацию виртуальной машины Java:
4.5 Поля
Начиная с версии:
24
См. также:
  • ClassModel.fields()
  • FieldTransform

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

Модификатор и тип Метод Описание
Utf8Entry fieldName()
Возвращает имя этого поля.
Utf8Entry fieldType()
Возвращает строку дескриптора этого поля.
default ClassDesc fieldTypeSymbol()
Возвращает тип поля в виде символьного дескриптора.
AccessFlags flags()
Возвращает флаги доступа.
Optional<ClassModel> parent()
Возвращает модель класса, членом которого является это поле, если она известна.

Методы, объявленные в интерфейсе AttributedElement

attributes, findAttribute, findAttributes
Модификатор и тип Метод Описание
List<Attribute<?>> attributes()
Возвращает атрибуты этой структуры.
default <T extends Attribute<T>>
Optional<T>
findAttribute(AttributeMapper<T> attr)
Находит атрибут по имени.
default <T extends Attribute<T>>
List<T>
findAttributes(AttributeMapper<T> attr)
Находит атрибуты по имени.

Методы, объявленные в интерфейсе CompoundElement

elementList, elementStream, forEach, iterator, toDebugString
Модификатор и тип Метод Описание
default List<FieldElement> elementList()
Возвращает List, содержащий все элементы-члены этого составного элемента.
default Stream<FieldElement> elementStream()
Возвращает Stream, содержащий все элементы-члены этого составного элемента.
void forEach(Consumer<? super FieldElement> consumer)
Вызывает предоставленный обработчик для каждого элемента-члена этого составного элемента.
default Iterator<FieldElement> iterator()
Возвращает Iterator, описывающий все элементы-члены этого составного элемента.
default String toDebugString()
Возвращает текстовое представление составного элемента и его содержимого для отладки.

Методы, объявленные в интерфейсе Iterable

spliterator
Модификатор и тип Метод Описание
default Spliterator<FieldElement> spliterator()
Создает Spliterator для элементов, описываемых этим Iterable.

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

flags

AccessFlags flags()
Возвращает флаги доступа.
Возвращает:
флаги доступа
См. также:
  • AccessFlag.Location.FIELD

parent

Optional<ClassModel> parent()
Возвращает модель класса, членом которого является это поле, если она известна.
Возвращает:
модель класса, членом которого является это поле, если она известна

fieldName

Utf8Entry fieldName()
Возвращает имя этого поля.
Возвращает:
имя этого поля

fieldType

Utf8Entry fieldType()
Возвращает строку дескриптора этого поля.
Возвращает:
строку дескриптора этого поля

fieldTypeSymbol

default ClassDesc fieldTypeSymbol()
Возвращает тип поля в виде символьного дескриптора.
Возвращает:
тип поля в виде символьного дескриптора

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в разделе Документация Java SE, где приведены более подробные описания для разработчиков, обзоры концепций, определения терминов, способы обхода проблем и рабочие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторское право © 1993, 2026, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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.

Spec-Zone.ru

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