Spec-Zone.ru › OpenJDK 27

Перечисление 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>
Модификатор и тип Класс Описание
static final class  Enum.EnumDesc<E extends Enum<E>>
Номинальный дескриптор константы enum.

Сводка констант перечисления

Константа перечисления Описание
RELEASE_0
Исходная версия.
RELEASE_1
Версия, распознаваемая платформой Java 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_26
Версия, появившаяся в Java Platform, Standard Edition 26.
RELEASE_27
Версия, появившаяся в Java Platform, Standard Edition 27.
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
Модификатор и тип Метод Описание
protected final Object clone()
Выбрасывает CloneNotSupportedException.
final int compareTo(ClassFileFormatVersion o)
Сравнивает это перечисление с указанным объектом, определяя их порядок.
final Optional<Enum.EnumDesc<ClassFileFormatVersion>> describeConstable()
Возвращает дескриптор перечисления EnumDesc для этого экземпляра, если его можно создать, или пустой Optional, если создать его нельзя.
final boolean equals(Object other)
Возвращает true, если указанный объект равен этой константе перечисления.
protected final void finalize()
Устарело, подлежит удалению: этот элемент API может быть удалён в будущей версии.
Финализация помечена как устаревшая и подлежащая удалению.
final Class<ClassFileFormatVersion> getDeclaringClass()
Возвращает объект Class, соответствующий типу перечисления этой константы перечисления.
final int hashCode()
Возвращает хеш-код этой константы перечисления.
final String name()
Возвращает имя этой константы перечисления в точности в том виде, в каком оно объявлено в объявлении перечисления.
final int ordinal()
Возвращает порядковый номер этой константы перечисления (её позицию в объявлении перечисления, где первой константе присваивается порядковый номер ноль).
String toString()
Возвращает имя этой константы перечисления, указанное в объявлении.
static <T extends Enum<T>>
T
valueOf(Class<T> enumClass, String name)
Возвращает константу указанного класса-перечисления с заданным именем.

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

getClass, notify, notifyAll, wait, wait, wait
Модификатор и тип Метод Описание
final Class<?> getClass()
Возвращает класс среды выполнения этого Object.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
final void wait()
Заставляет текущий поток ждать пробуждения, обычно вследствие уведомления или прерывания.
final void wait(long timeoutMillis)
Заставляет текущий поток ждать пробуждения, обычно вследствие уведомления или прерывания, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ждать пробуждения, обычно вследствие уведомления или прерывания, либо до истечения заданного промежутка реального времени.

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

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

RELEASE_26

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

RELEASE_27

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

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

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 — версия среды выполнения, которую нужно сопоставить с версией формата файла класса
Возвращает:
последнюю версию формата файла класса, которую можно использовать с указанной версией среды выполнения
Вызывает исключение:
NullPointerException — если rv равно null
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, 2026, 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.

Spec-Zone.ru

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