Spec-Zone.ru › OpenJDK 24

Интерфейс AccessFlags

Все суперинтерфейсы:
ClassElement, ClassFileElement, FieldElement, MethodElement
public sealed interface AccessFlags extends ClassElement, MethodElement, FieldElement
Моделирует флаги доступа для класса, метода или поля. Флаги доступа появляются ровно один раз в каждом классе, методе или поле; ClassBuilder и FieldBuilder выбирают неопределённое значение по умолчанию, если флаги доступа не предоставлены, а MethodBuilder всегда создаётся с флагами доступа.

AccessFlags нельзя создать напрямую через метод-фабрику; его можно создать с помощью методов withFlags на соответствующих билдерах.

MethodBuilder выбрасывает IllegalArgumentException, если ему предоставлен объект AccessFlags, который изменяет существующий флаг ACC_STATIC билдера, потому что изменение флага доступа может сделать недействительными ранее предоставленные данные билдеру.

Примечание API:
Флаги доступа для классов, методов и полей моделируются как отдельный объект для поддержки потоковой передачи как элементов для ClassFileTransform. Другие флаги доступа не являются элементами CompoundElement и поэтому не моделируются AccessFlags; они предоставляют свои собственные методы flagsMask, flags и has.
С:
24
См. также:
  • ClassModel.flags()
  • FieldModel.flags()
  • MethodModel.flags()
  • ClassBuilder.withFlags(int)
  • FieldBuilder.withFlags(int)
  • MethodBuilder.withFlags(int)

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

Модификатор и тип Метод Описание
Set<AccessFlag> flags()
Возвращает флаги доступа как набор перечислений флагов.
int flagsMask()
Возвращает флаги доступа как битовую маску.
boolean has(AccessFlag flag)
Возвращает, установлен ли указанный флаг.
AccessFlag.Location location()
Возвращает расположение файла class для этого элемента, которое может быть классом, методом или полем.

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

flagsMask

int flagsMask()
Возвращает флаги доступа как битовую маску. Значение находится в диапазоне беззнакового короткого целого, [0, 0xFFFF].
Возвращает:
флаги доступа как битовую маску

flags

Set<AccessFlag> flags()
Возвращает флаги доступа как набор перечислений флагов.
Возвращает:
флаги доступа как набор перечислений флагов
Исключения:
IllegalArgumentException - если в маске флагов установлен какой-либо неопределенный бит
См. также:
  • location()

has

boolean has(AccessFlag flag)
Возвращает, установлен ли указанный флаг. Если указанный флаг недоступен для этого расположения, возвращает false.
Параметры:
flag - флаг для проверки
Возвращает:
установлен ли указанный флаг
См. также:
  • location()

location

AccessFlag.Location location()
Возвращает расположение файла class для этого элемента, которое может быть классом, методом или полем.
Возвращает:
расположение файла class для этого элемента, которое может быть классом, методом или полем
См. также:
  • AccessFlag.Location.CLASS
  • AccessFlag.Location.FIELD
  • AccessFlag.Location.METHOD

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

Spec-Zone.ru

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