Interface PermittedSubclassesAttribute

All Superinterfaces:
AttributePREVIEW<PermittedSubclassesAttributePREVIEW>, ClassElementPREVIEW, ClassFileElementPREVIEW

public sealed interface PermittedSubclassesAttribute extends AttributePREVIEW<PermittedSubclassesAttributePREVIEW>, ClassElementPREVIEW
PermittedSubclassesAttribute is a preview API of the Java platform.
Programs can only use PermittedSubclassesAttribute when preview features are enabled.
Preview features may be removed in a future release, or upgraded to permanent features of the Java platform.
Models the PermittedSubclasses attribute (JVMS 4.7.31), which can appear on classes to indicate which classes may extend this class. Delivered as a ClassElementPREVIEW when traversing the elements of a ClassModelPREVIEW.

The attribute does not permit multiple instances in a given location. Subsequent occurrence of the attribute takes precedence during the attributed element build or transformation.

The attribute was introduced in the Java SE Platform version 17.

Since:
22
  • Method Details

    • permittedSubclasses

      List<ClassEntryPREVIEW> permittedSubclasses()
      Returns the list of permitted subclasses.
      Returns:
      the list of permitted subclasses
    • of

      Returns a PermittedSubclasses attribute.
      Parameters:
      permittedSubclasses - the permitted subclasses
      Returns:
      a PermittedSubclasses attribute
    • of

      static PermittedSubclassesAttributePREVIEW of(ClassEntryPREVIEW... permittedSubclasses)
      Returns a PermittedSubclasses attribute.
      Parameters:
      permittedSubclasses - the permitted subclasses
      Returns:
      a PermittedSubclasses attribute
    • ofSymbols

      static PermittedSubclassesAttributePREVIEW ofSymbols(List<ClassDesc> permittedSubclasses)
      Returns a PermittedSubclasses attribute.
      Parameters:
      permittedSubclasses - the permitted subclasses
      Returns:
      a PermittedSubclasses attribute
    • ofSymbols

      static PermittedSubclassesAttributePREVIEW ofSymbols(ClassDesc... permittedSubclasses)
      Returns a PermittedSubclasses attribute.
      Parameters:
      permittedSubclasses - the permitted subclasses
      Returns:
      a PermittedSubclasses attribute