Interface InnerClassInfo
public sealed interface InnerClassInfo
Models a single entry in the
InnerClassesAttribute.- See Java Virtual Machine Specification:
- 4.7.6 The
InnerClassesAttribute
- Since:
- 24
- See Also:
Method Summary
| Modifier and Type | Method | Description |
|---|---|---|
default Set |
flags() |
Returns a set of flag enums denoting access permissions and properties of the nested class. |
int |
flagsMask() |
Returns a bit mask of flags denoting access permissions and properties of the inner class. |
default boolean |
has |
Returns whether a specific access flag is set. |
ClassEntry |
innerClass() |
Returns the nested class described by this entry. |
Optional |
innerName() |
Returns the simple name of this class, or empty if this class is anonymous. |
static InnerClassInfo |
of |
Returns a nested class description. |
static InnerClassInfo |
of |
Returns a nested class description. |
static InnerClassInfo |
of |
Returns a nested class description. |
Optional |
outerClass() |
Returns the class or interface of which this class is a member, if it is a member of a class or interface. |
Method Details
innerClass
ClassEntry innerClass()
Returns the nested class described by this entry.
- Returns:
- the nested class described by this entry
outerClass
Optional<ClassEntry> outerClass()
Returns the class or interface of which this class is a member, if it is a member of a class or interface. This may be empty if this class is local or anonymous.
- Returns:
- the class or interface of which this class is a member, if it is a member of a class or interface
- See Also:
innerName
Optional<Utf8Entry> innerName()
Returns the simple name of this class, or empty if this class is anonymous.
- Returns:
- the simple name of this class, or empty if this class is anonymous
- See Also:
flagsMask
int flagsMask()
Returns a bit mask of flags denoting access permissions and properties of the inner class. It is a
u2 value.- Returns:
- a bit mask of flags denoting access permissions and properties of the inner class
- See Also:
flags
default Set<AccessFlag> flags()
Returns a set of flag enums denoting access permissions and properties of the nested class.
- Returns:
- a set of flag enums denoting access permissions and properties of the nested class
- Throws:
-
IllegalArgumentException- if the flags mask has any undefined bit set - See Also:
has
default boolean has(AccessFlag flag)
Returns whether a specific access flag is set.
- Parameters:
-
flag- the access flag - Returns:
- whether a specific access flag is set
- See Also:
of
static InnerClassInfo of(ClassEntry innerClass, Optional<ClassEntry> outerClass, Optional<Utf8Entry> innerName, int flags)
Returns a nested class description.
- Parameters:
-
innerClass- the nested class being described -
outerClass- the class that has the nested class as a member, if it exists -
innerName- the simple name of the nested class, if it is not anonymous -
flags- the inner class access flags - Returns:
- a nested class description
- Throws:
-
IllegalArgumentException- ifflagsis notu2
of
static InnerClassInfo of(ClassDesc innerClass, Optional<ClassDesc> outerClass, Optional<String> innerName, int flags)
Returns a nested class description.
- Parameters:
-
innerClass- the nested class being described -
outerClass- the class that has the nested class as a member, if it exists -
innerName- the simple name of the nested class, if it is not anonymous -
flags- the inner class access flags - Returns:
- a nested class description
- Throws:
-
IllegalArgumentException- ifinnerClassorouterClassrepresents a primitive type, or ifflagsis notu2
of
static InnerClassInfo of(ClassDesc innerClass, Optional<ClassDesc> outerClass, Optional<String> innerName, AccessFlag... flags)
Returns a nested class description.
- Parameters:
-
innerClass- the nested class being described -
outerClass- the class that has the nested class as a member, if it exists -
innerName- the name of the nested class, if it is not anonymous -
flags- the inner class access flags - Returns:
- a nested class description
- Throws:
-
IllegalArgumentException- ifinnerClassorouterClassrepresents a primitive type, or if any flag cannot be applied to theAccessFlag.Location.INNER_CLASSlocation
© 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.