APIdia Launch Partner
Top Description Methods
java.lang.classfile.attribute

public sealed Interface InnerClassesAttribute

extends Attribute<InnerClassesAttribute>, ClassElement
permits BoundInnerClassesAttribute, UnboundInnerClassesAttribute
Known Direct Implementers
jdk.internal.classfile.impl.BoundAttribute.BoundInnerClassesAttribute, jdk.internal.classfile.impl.UnboundAttribute.UnboundInnerClassesAttribute
Imports
java.lang.classfile.Attribute, .AttributeMapper, .AttributeMapper.AttributeStability, .Attributes, .ClassElement, .ClassFile, java.util.List, jdk.internal.classfile.impl.BoundAttribute, .UnboundAttribute

Models the InnerClasses attribute (JVMS 4.7.6), which records which classes referenced by this class file are nested classes.

This attribute only appears on classes, and does not permit multiple instances in a class. It has a data dependency on the constant pool.

The attribute was introduced in the Java SE Platform version 1.1, major version 45.

Since
24
Java Virtual Machine Specification
4.7.6 The InnerClasses Attribute
See Also
Attributes#innerClasses()

Method Summary

Modifier and TypeMethod and Description
public List<InnerClassInfo>

Returns:

the nested classes used by this class file
classes
()

Returns the nested classes used by this class file.

public static InnerClassesAttribute

Returns:

an InnerClasses attribute
of
(List<InnerClassInfo>
descriptions of the nested classes
innerClasses
)

Returns an InnerClasses attribute.

public static InnerClassesAttribute

Returns:

an InnerClasses attribute
of
(InnerClassInfo...
descriptions of the nested classes
innerClasses
)

Returns an InnerClasses attribute.

Inherited from java.lang.classfile.Attribute:
attributeMapperattributeName

Method Detail

classesback to summary
public List<InnerClassInfo> classes()

Returns the nested classes used by this class file.

Returns:List<InnerClassInfo>

the nested classes used by this class file

ofback to summary
public static InnerClassesAttribute of(List<InnerClassInfo> innerClasses)

Returns an InnerClasses attribute.

Parameters
innerClasses:List<InnerClassInfo>

descriptions of the nested classes

Returns:InnerClassesAttribute

an InnerClasses attribute

Exceptions
IllegalArgumentException:
if the number of descriptions exceeds the limit of u2
ofback to summary
public static InnerClassesAttribute of(InnerClassInfo... innerClasses)

Returns an InnerClasses attribute.

Parameters
innerClasses:InnerClassInfo[]

descriptions of the nested classes

Returns:InnerClassesAttribute

an InnerClasses attribute

Exceptions
IllegalArgumentException:
if the number of descriptions exceeds the limit of u2