Interface ClassModel

All Superinterfaces:
AttributedElementPREVIEW, ClassFileElementPREVIEW, CompoundElementPREVIEW<ClassElementPREVIEW>, Iterable<ClassElementPREVIEW>

public sealed interface ClassModel extends CompoundElementPREVIEW<ClassElementPREVIEW>, AttributedElementPREVIEW
ClassModel is a preview API of the Java platform.
Programs can only use ClassModel when preview features are enabled.
Preview features may be removed in a future release, or upgraded to permanent features of the Java platform.
Models a classfile. The contents of the classfile can be traversed via a streaming view (e.g., CompoundElement.elements()PREVIEW), or via random access (e.g., flags()), or by freely mixing the two.
Since:
22
  • Method Details

    • constantPool

      ConstantPoolPREVIEW constantPool()
      Returns the constant pool for this class.
      Returns:
      the constant pool for this class
    • flags

      Returns the access flags.
      Returns:
      the access flags
    • thisClass

      ClassEntryPREVIEW thisClass()
      Returns the constant pool entry describing the name of this class.
      Returns:
      the constant pool entry describing the name of this class
    • majorVersion

      int majorVersion()
      Returns the major classfile version.
      Returns:
      the major classfile version
    • minorVersion

      int minorVersion()
      Returns the minor classfile version.
      Returns:
      the minor classfile version
    • fields

      Returns the fields of this class.
      Returns:
      the fields of this class
    • methods

      Returns the methods of this class.
      Returns:
      the methods of this class
    • superclass

      Returns the superclass of this class, if there is one.
      Returns:
      the superclass of this class, if there is one
    • interfaces

      List<ClassEntryPREVIEW> interfaces()
      Returns the interfaces implemented by this class.
      Returns:
      the interfaces implemented by this class
    • isModuleInfo

      boolean isModuleInfo()
      Returns whether this class is a module descriptor.
      Returns:
      whether this class is a module descriptor