Spec-Zone.ru › OpenJDK 25

Класс перечисления ClassFileFormatVersion

java.lang.Object
java.lang.Enum<ClassFileFormatVersion>
java.lang.reflect.ClassFileFormatVersion
Все реализуемые интерфейсы:
Serializable, Comparable<ClassFileFormatVersion>, Constable
public enum ClassFileFormatVersion extends Enum<ClassFileFormatVersion>
Версии формата файлов классов виртуальной машины Java. Информацию о конкретной версии формата файла класса см. в соответствующем издании Спецификации виртуальной машины Java.

Обратите внимание, что для моделирования будущих выпусков Спецификации виртуальной машины Java будут добавлены дополнительные константы версий формата файлов классов.

Примечание к API:
Полная версия, используемая в файле класса, включает основную и дополнительную версии; это перечисление моделирует только основную версию. Реализация виртуальной машины Java должна поддерживать диапазон основных версий; подробности см. в соответствующем издании Спецификации виртуальной машины Java.
Начиная с:
20
См. также:
  • Системное свойство java.class.version
  • SourceVersion

Краткое описание вложенных классов

Вложенные классы и интерфейсы, объявленные в классе Enum

Enum.EnumDesc<E>

Краткое описание констант перечисления

Константа перечисления Описание
RELEASE_0
Исходная версия.
RELEASE_1
Версия, распознаваемая Java Platform 1.1.
RELEASE_10
Версия, представленная в Java Platform, Standard Edition 10.
RELEASE_11
Версия, представленная в Java Platform, Standard Edition 11.
RELEASE_12
Версия, представленная в Java Platform, Standard Edition 12.
RELEASE_13
Версия, представленная в Java Platform, Standard Edition 13.
RELEASE_14
Версия, представленная в Java Platform, Standard Edition 14.
RELEASE_15
Версия, представленная в Java Platform, Standard Edition 15.
RELEASE_16
Версия, представленная в Java Platform, Standard Edition 16.
RELEASE_17
Версия, представленная в Java Platform, Standard Edition 17.
RELEASE_18
Версия, представленная в Java Platform, Standard Edition 18.
RELEASE_19
Версия, представленная в Java Platform, Standard Edition 19.
RELEASE_2
Версия, представленная в Java 2 Platform, Standard Edition, v 1.2.
RELEASE_20
Версия, представленная в Java Platform, Standard Edition 20.
RELEASE_21
Версия, представленная в Java Platform, Standard Edition 21.
RELEASE_22
Версия, представленная в Java Platform, Standard Edition 22.
RELEASE_23
Версия, представленная в Java Platform, Standard Edition 23.
RELEASE_24
Версия, представленная в Java Platform, Standard Edition 24.
RELEASE_25
Версия, представленная в Java Platform, Standard Edition 25.
RELEASE_3
Версия, представленная в Java 2 Platform, Standard Edition, v 1.3.
RELEASE_4
Версия, представленная в Java 2 Platform, Standard Edition, v 1.4.
RELEASE_5
Версия, представленная в Java 2 Platform, Standard Edition 5.0.
RELEASE_6
Версия, представленная в Java Platform, Standard Edition 6.
RELEASE_7
Версия, представленная в Java Platform, Standard Edition 7.
RELEASE_8
Версия, представленная в Java Platform, Standard Edition 8.
RELEASE_9
Версия, представленная в Java Platform, Standard Edition 9.

Краткое описание методов

Модификатор и тип Метод Описание
static ClassFileFormatVersion fromMajor(int major)
Возвращает последнюю версию формата файла класса, основная версия которой совпадает с аргументом.
static ClassFileFormatVersion latest()
Возвращает последнюю версию формата файла класса.
int major()
Возвращает основную версию файла класса в виде целого числа.
Runtime.Version runtimeVersion()
Возвращает минимальную версию среды выполнения, поддерживающую эту версию формата файла класса; в противном случае — null.
static ClassFileFormatVersion valueOf(Runtime.Version rv)
Возвращает последнюю версию формата файла класса, используемую в среде выполнения, указанной в аргументе.
static ClassFileFormatVersion valueOf(String name)
Возвращает константу перечисления этого класса с указанным именем.
static ClassFileFormatVersion[] values()
Возвращает массив, содержащий константы этого класса перечисления в порядке их объявления.

Методы, объявленные в классе Enum

clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf

Методы, объявленные в классе Object

getClass, notify, notifyAll, wait, wait, wait

Подробное описание констант перечисления

RELEASE_0

public static final ClassFileFormatVersion RELEASE_0
Исходная версия. Формат, описанный в «Спецификации виртуальной машины Java», первое издание.

RELEASE_1

public static final ClassFileFormatVersion RELEASE_1
Версия, распознаваемая Java Platform 1.1.
Примечание к API:
Хотя RELEASE_0 и RELEASE_1 имеют одинаковую основную версию, для RELEASE_1 было определено несколько дополнительных атрибутов (JVMS 4.7).

RELEASE_2

public static final ClassFileFormatVersion RELEASE_2
Версия, представленная в Java 2 Platform, Standard Edition, v 1.2. Формат, описанный в «Спецификации виртуальной машины Java», второе издание, которая включает флаг доступа ACC_STRICT.

RELEASE_3

public static final ClassFileFormatVersion RELEASE_3
Версия, представленная в Java 2 Platform, Standard Edition, v 1.3.

RELEASE_4

public static final ClassFileFormatVersion RELEASE_4
Версия, представленная в Java 2 Platform, Standard Edition, v 1.4.

RELEASE_5

public static final ClassFileFormatVersion RELEASE_5
Версия, представленная в Java 2 Platform, Standard Edition 5.0.
См. также:
  • «Спецификация виртуальной машины Java», второе издание, обновлённое для Java SE 5.0
  • JSR 14: Добавление обобщённых типов в язык программирования Java™
  • JSR 175: Средство метаданных для языка программирования Java™

RELEASE_6

public static final ClassFileFormatVersion RELEASE_6
Версия, представленная в Java Platform, Standard Edition 6.
См. также:
  • «Спецификация виртуальной машины Java», второе издание для Java SE, обновлённое для Java SE 6

RELEASE_7

public static final ClassFileFormatVersion RELEASE_7
Версия, представленная в Java Platform, Standard Edition 7.
См. также:
  • «Спецификация виртуальной машины Java», издание для Java SE 7

RELEASE_8

public static final ClassFileFormatVersion RELEASE_8
Версия, представленная в Java Platform, Standard Edition 8.
См. также:
  • «Спецификация виртуальной машины Java», издание для Java SE 8
  • JSR 335: Лямбда-выражения для языка программирования Java™

RELEASE_9

public static final ClassFileFormatVersion RELEASE_9
Версия, представленная в Java Platform, Standard Edition 9.
См. также:
  • «Спецификация виртуальной машины Java», издание для Java SE 9
  • JSR 376: Модульная система платформы Java™

RELEASE_10

public static final ClassFileFormatVersion RELEASE_10
Версия, представленная в Java Platform, Standard Edition 10.
См. также:
  • «Спецификация виртуальной машины Java», издание для Java SE 10

RELEASE_11

public static final ClassFileFormatVersion RELEASE_11
Версия, представленная в Java Platform, Standard Edition 11.
См. также:
  • «Спецификация виртуальной машины Java», издание для Java SE 11
  • JEP 181: Управление доступом на основе вложенности

RELEASE_12

public static final ClassFileFormatVersion RELEASE_12
Версия, представленная в Java Platform, Standard Edition 12.
См. также:
  • «Спецификация виртуальной машины Java», издание для Java SE 12

RELEASE_13

public static final ClassFileFormatVersion RELEASE_13
Версия, представленная в Java Platform, Standard Edition 13.
См. также:
  • «Спецификация виртуальной машины Java», издание для Java SE 13

RELEASE_14

public static final ClassFileFormatVersion RELEASE_14
Версия, представленная в Java Platform, Standard Edition 14.
См. также:
  • «Спецификация виртуальной машины Java», издание для Java SE 14

RELEASE_15

public static final ClassFileFormatVersion RELEASE_15
Версия, представленная в Java Platform, Standard Edition 15.
См. также:
  • «Спецификация виртуальной машины Java», издание для Java SE 15
  • JEP 371: Скрытые классы

RELEASE_16

public static final ClassFileFormatVersion RELEASE_16
Версия, представленная в Java Platform, Standard Edition 16.
См. также:
  • «Спецификация виртуальной машины Java», издание для Java SE 16

RELEASE_17

public static final ClassFileFormatVersion RELEASE_17
Версия, представленная в Java Platform, Standard Edition 17. Нововведения этого выпуска включают запечатанные классы и восстановление строгой семантики операций с плавающей точкой.
См. также:
  • «Спецификация виртуальной машины Java», издание для Java SE 17
  • JEP 306: Восстановление строгой семантики операций с плавающей точкой
  • JEP 409: Запечатанные классы

RELEASE_18

public static final ClassFileFormatVersion RELEASE_18
Версия, представленная в Java Platform, Standard Edition 18.
См. также:
  • «Спецификация виртуальной машины Java», издание для Java SE 18

RELEASE_19

public static final ClassFileFormatVersion RELEASE_19
Версия, представленная в Java Platform, Standard Edition 19.
См. также:
  • «Спецификация виртуальной машины Java», издание для Java SE 19

RELEASE_20

public static final ClassFileFormatVersion RELEASE_20
Версия, представленная в Java Platform, Standard Edition 20.
См. также:
  • «Спецификация виртуальной машины Java», издание для Java SE 20

RELEASE_21

public static final ClassFileFormatVersion RELEASE_21
Версия, представленная в Java Platform, Standard Edition 21.
Начиная с версии:
21
См. также:
  • «Спецификация виртуальной машины Java», издание для Java SE 21

RELEASE_22

public static final ClassFileFormatVersion RELEASE_22
Версия, представленная в Java Platform, Standard Edition 22.
Начиная с версии:
22
См. также:
  • «Спецификация виртуальной машины Java», издание для Java SE 22

RELEASE_23

public static final ClassFileFormatVersion RELEASE_23
Версия, представленная в Java Platform, Standard Edition 23.
Начиная с версии:
23
См. также:
  • «Спецификация виртуальной машины Java», издание для Java SE 23

RELEASE_24

public static final ClassFileFormatVersion RELEASE_24
Версия, представленная в Java Platform, Standard Edition 24.
Начиная с версии:
24
См. также:
  • «Спецификация виртуальной машины Java», издание для Java SE 24

RELEASE_25

public static final ClassFileFormatVersion RELEASE_25
Версия, представленная в Java Platform, Standard Edition 25.
Начиная с версии:
25
См. также:
  • «Спецификация виртуальной машины Java», издание для Java SE 25

Подробное описание методов

values

public static ClassFileFormatVersion[] values()
Возвращает массив, содержащий константы этого класса перечисления в порядке их объявления.
Возвращает:
массив, содержащий константы этого класса перечисления в порядке их объявления

valueOf

public static ClassFileFormatVersion valueOf(String name)
Возвращает константу перечисления этого класса с указанным именем. Строка должна точно совпадать с идентификатором, использованным для объявления константы перечисления в этом классе. (Лишние пробельные символы не допускаются.)
Параметры:
name — имя возвращаемой константы перечисления.
Возвращает:
константу перечисления с указанным именем
Выбрасывает:
IllegalArgumentException — если в этом классе перечисления нет константы с указанным именем
NullPointerException — если аргумент равен null

latest

public static ClassFileFormatVersion latest()
Возвращает последнюю версию формата файла класса.
Возвращает:
последнюю версию формата файла класса

major

public int major()
Возвращает основную версию файла класса в виде целого числа.
Возвращает:
основную версию файла класса в виде целого числа
См. Спецификацию виртуальной машины Java:
4.1 Структура ClassFile

valueOf

public static ClassFileFormatVersion valueOf(Runtime.Version rv)
Возвращает последнюю версию формата файла класса, пригодную для использования в версии среды выполнения, переданной в качестве аргумента. Если компонент feature версии среды выполнения больше, чем компонент feature версии среды выполнения для последней версии формата файла класса, выбрасывается IllegalArgumentException.

Поскольку версии формата файла класса платформы Java до сих пор следовали линейному порядку, для определения соответствия версии формата файла класса запрашивается только компонент feature версии среды выполнения. Если в будущем эта линейность изменится, на результат могут влиять и другие компоненты версии среды выполнения.

Примечание API:
Выражение для преобразования строкового значения, например "17", в соответствующую версию формата файла класса, RELEASE_17, выглядит так:
ClassFileFormatVersion.valueOf(Runtime.Version.parse("17"))
Параметры:
rv — версия среды выполнения для преобразования в версию формата файла класса
Возвращает:
последнюю версию формата файла класса, пригодную для использования в версии среды выполнения, переданной в качестве аргумента
Вызывает исключение:
IllegalArgumentException — если компонент feature версии, переданной в качестве аргумента, больше компонента feature версии платформы.

runtimeVersion

public Runtime.Version runtimeVersion()
Возвращает наименьшую версию среды выполнения, поддерживающую эту версию формата файла класса; в противном случае — null. Возвращаемая версия среды выполнения имеет достаточно большое значение компонента feature для поддержки этой версии формата файла класса, а остальные компоненты не заданы. Для версий формата файла класса, равных или превышающих RELEASE_6, результат не равен null.
Возвращает:
наименьшую версию среды выполнения, поддерживающую эту версию формата файла класса; в противном случае — null

fromMajor

public static ClassFileFormatVersion fromMajor(int major)
Возвращает последнюю версию формата файла класса, основная версия файла класса которой совпадает с аргументом.
Параметры:
major — основная версия файла класса в виде целого числа
Возвращает:
последнюю версию формата файла класса, основная версия файла класса которой совпадает с аргументом
Вызывает исключение:
IllegalArgumentException — если аргумент находится за пределами диапазона основных версий файла класса

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/lang/reflect/ClassFileFormatVersion.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API