Interface ClassFileVersion
- All Superinterfaces:
ClassElement,ClassFileElement
class file (JVMS
4.1). The class file version appears exactly once in each
class, and is set to an unspecified default value if not explicitly provided.
The major versions of class file format begins at 45 for Java Platform version 1.0.2, and is continuous
up to ClassFile.latestMajorVersion(). In general, each major version
defines a new supported class file format, modeled by ClassFileFormatVersion, and supports all previous formats.
For major versions up to 55 for Java SE
Platform 11, the minor version of any value is supported. For major versions
56 for Java SE Platform version 12 and above,
the minor version must be 0 or 65535.
The minor version 0 is always supported, and represents the format
modeled by ClassFileFormatVersion. The minor version 65535
indicates the class file uses preview features of the Java SE
Platform release represented by the major version. A Java Virtual Machine
can only load such a class file if it has the same Java SE Platform
version and the JVM has preview features enabled.
- See Java Virtual Machine Specification:
-
4.1 The
ClassFileStructure - Since:
- 24
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionintReturns the major version.intReturns the minor version.static ClassFileVersionof(int majorVersion, int minorVersion) Returns aClassFileVersionelement.
-
Method Details
-
majorVersion
int majorVersion()Returns the major version. It is in the range of unsigned short,[0, 65535].- API Note:
- Constants in
ClassFilenamedJava_#_VERSION, where # is a release number, such asClassFile.JAVA_21_VERSION, describe the class major versions of the Java Platform SE. - Returns:
- the major version
-
minorVersion
int minorVersion()Returns the minor version. It is in the range of unsigned short,[0, 65535].- Returns:
- the minor version
-
of
Returns aClassFileVersionelement.- Parameters:
majorVersion- the major versionminorVersion- the minor version- Returns:
- a
ClassFileVersionelement
-