Interface AccessFlags
- All Superinterfaces:
ClassElement, ClassFileElement, FieldElement, MethodElement
public sealed interface AccessFlags extends ClassElement, MethodElement, FieldElement
ClassBuilder and a FieldBuilder chooses an unspecified default value if access flags are not provided, and a MethodBuilder is always created with access flags. AccessFlags cannot be created via a factory method directly; it can be created with withFlags methods on the respective builders.
A MethodBuilder throws an IllegalArgumentException if it is supplied an AccessFlags object that changes the preexisting ACC_STATIC flag of the builder, because the access flag change may invalidate previously supplied data to the builder.
- API Note:
- The access flags of classes, methods, and fields are modeled as a standalone object to support streaming as elements for
ClassFileTransform. Other access flags are not elements of aCompoundElementand thus not modeled byAccessFlags; they provide their ownflagsMask,flags, andhasmethods. - Since:
- 24
- See Also:
Method Summary
| Modifier and Type | Method | Description |
|---|---|---|
Set |
flags() |
Returns the access flags, as a set of flag enums. |
int |
flagsMask() |
Returns the access flags, as a bit mask. |
boolean |
has |
Returns whether the specified flag is set. |
AccessFlag.Location |
location() |
Returns the class file location for this element, which is either class, method, or field. |
Method Details
flagsMask
int flagsMask()
u2 value.- Returns:
- the access flags, as a bit mask
flags
Set<AccessFlag> flags()
- Returns:
- the access flags, as a set of flag enums
- Throws:
-
IllegalArgumentException- if the flags mask has any undefined bit set - See Also:
has
boolean has(AccessFlag flag)
false.- Parameters:
-
flag- the flag to test - Returns:
- whether the specified flag is set
- See Also:
location
AccessFlag.Location location()
class file location for this element, which is either class, method, or field.- Returns:
- the
classfile location for this element, which is either class, method, or field - See Also:
© 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.