Module java.base
Package java.lang.classfile

# Interface Superclass

≠
public abstract sealed interface Superclass
extends java.lang.classfile.ClassElement
permits jdk.internal.classfile.impl.SuperclassImpl
Comparing master and cf

All Superinterfaces:
  `ClassElement, ClassFileElement`

public sealed interface Superclass extends ClassElement
Models the superclass (JVMS 4.1) of a class. Delivered as a `ClassElement` when traversing a `ClassModel` .

Since:
  24

A `Superclass` appears at most once in a `ClassModel` : it must be absent for module descriptors or the `Object` class, and must be present otherwise. A `ClassBuilder` sets the `Object` class as the superclass if the superclass is not supplied and the class to build is required to have a superclass.

All interfaces have `Object` as their superclass.

See Java Virtual Machine Specification:
  4.1 The `ClassFile` Structure
Since:
  24
See Also:
  - `ClassModel.superclass()`
  - `ClassBuilder.withSuperclass(ClassEntry)`

## Methods

- =
  public static java.lang.classfile.Superclass of(java.lang.classfile.constantpool.ClassEntry arg0)
- =
  public abstract java.lang.classfile.constantpool.ClassEntry superclassEntry()

## Summary

Differences
| Elements | Comments | Descriptions | Total
Added | Changed | Removed | Added | Changed | Removed | Added | Changed | Removed
--- | --- | --- | --- | --- | --- | --- | --- | ---
Superclass |  |  |  |  |  |  | 5 |  | 5 | 10
Total |  |  |  |  |  |  | 5 |  | 5 | 10