Interface PermittedSubclassesAttribute
- All Superinterfaces:
Attribute<PermittedSubclassesAttribute>, ClassElement, ClassFileElement
public sealed interface PermittedSubclassesAttribute
extends Attribute<PermittedSubclassesAttribute>, ClassElement
Models the
PermittedSubclasses
attribute (JVMS 4.7.31), which indicates this class or interface
is sealed,
and which classes or interfaces may extend or implement this class or
interface.
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 17, major version 61.
- See Java Language Specification:
-
8.1.1.2
sealed
,non-sealed
, andfinal
Classes
9.1.1.4sealed
andnon-sealed
Interfaces - See Java Virtual Machine Specification:
-
4.7.31 The
PermittedSubclasses
Attribute - Since:
- 24
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionstatic PermittedSubclassesAttribute
of
(ClassEntry... permittedSubclasses) Returns aPermittedSubclasses
attribute.static PermittedSubclassesAttribute
of
(List<ClassEntry> permittedSubclasses) Returns aPermittedSubclasses
attribute.static PermittedSubclassesAttribute
Returns aPermittedSubclasses
attribute.static PermittedSubclassesAttribute
Returns aPermittedSubclasses
attribute.Returns the list of permitted subclasses or subinterfaces.Methods inherited from interface Attribute
attributeMapper, attributeName
-
Method Details
-
permittedSubclasses
List<ClassEntry> permittedSubclasses()Returns the list of permitted subclasses or subinterfaces.- Returns:
- the list of permitted subclasses or subinterfaces
- See Also:
-
of
Returns aPermittedSubclasses
attribute.- Parameters:
permittedSubclasses
- the permitted subclasses or subinterfaces- Returns:
- a
PermittedSubclasses
attribute
-
of
Returns aPermittedSubclasses
attribute.- Parameters:
permittedSubclasses
- the permitted subclasses or subinterfaces- Returns:
- a
PermittedSubclasses
attribute
-
ofSymbols
Returns aPermittedSubclasses
attribute.- Parameters:
permittedSubclasses
- the permitted subclasses or subinterfaces- Returns:
- a
PermittedSubclasses
attribute - Throws:
IllegalArgumentException
- if any ofpermittedSubclasses
is primitive
-
ofSymbols
Returns aPermittedSubclasses
attribute.- Parameters:
permittedSubclasses
- the permitted subclasses or subinterfaces- Returns:
- a
PermittedSubclasses
attribute - Throws:
IllegalArgumentException
- if any ofpermittedSubclasses
is primitive
-