Класс перечисления SourceVersion
- Все реализуемые интерфейсы:
Serializable, Comparable<SourceVersion>, Constable
public enum SourceVersion extends Enum<SourceVersion>
Обратите внимание, что для моделирования будущих выпусков языка будут добавлены дополнительные константы версий исходного кода.
- Начиная с:
- 1.6
- См. также:
Краткое описание вложенных классов
Вложенные классы и интерфейсы, объявленные в классе Enum
Enum.EnumDesc<E> | Модификатор и тип | Класс | Описание |
|---|---|---|
static final class |
Enum.EnumDesc<E extends Enum<E>> |
Номинальный дескриптор константы enum. |
Краткое описание констант перечисления
| Константа перечисления | Описание |
|---|---|
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_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 boolean |
isIdentifier |
Возвращает значение, указывающее, является ли name синтаксически допустимым идентификатором (простым именем) или ключевым словом в последней версии исходного кода. |
static boolean |
isKeyword |
Возвращает значение, указывающее, является ли s ключевым словом, логическим литералом или литералом null в последней версии исходного кода. |
static boolean |
isKeyword |
Возвращает значение, указывающее, является ли s ключевым словом, логическим литералом или литералом null в указанной версии исходного кода. |
static boolean |
isName |
Возвращает значение, указывающее, является ли name синтаксически допустимым квалифицированным именем в последней версии исходного кода. |
static boolean |
isName |
Возвращает значение, указывающее, является ли name синтаксически допустимым квалифицированным именем в указанной версии исходного кода. |
static SourceVersion |
latest() |
Возвращает последнюю версию исходного кода, которую можно моделировать. |
static SourceVersion |
latestSupported() |
Возвращает последнюю версию исходного кода, полностью поддерживаемую текущей средой выполнения. |
Runtime.Version |
runtimeVersion() |
Возвращает минимальную версию среды выполнения, поддерживающую эту версию исходного кода; в противном случае — null. |
static SourceVersion |
valueOf |
Возвращает последнюю версию исходного кода, пригодную для использования с указанной версией среды выполнения. |
static SourceVersion |
valueOf |
Возвращает константу перечисления этого класса с указанным именем. |
static SourceVersion[] |
values() |
Возвращает массив, содержащий константы этого класса перечисления в порядке их объявления. |
Методы, объявленные в классе Enum
clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf | Модификатор и тип | Метод | Описание |
|---|---|---|
protected final Object |
clone() |
Выбрасывает CloneNotSupportedException. |
final int |
compareTo |
Сравнивает это перечисление с указанным объектом для определения порядка. |
final Optional |
describeConstable() |
Возвращает дескриптор перечисления EnumDesc для этого экземпляра, если его можно создать, или пустой объект Optional, если создать его нельзя. |
final boolean |
equals |
Возвращает true, если указанный объект равен этой константе перечисления. |
protected final void |
finalize() |
Устарело, подлежит удалению: этот элемент API может быть удалён в будущей версии. Метод завершения работы устарел и подлежит удалению. |
final Class |
getDeclaringClass() |
Возвращает объект Class, соответствующий типу перечисления этой константы перечисления. |
final int |
hashCode() |
Возвращает хеш-код этой константы перечисления. |
final String |
name() |
Возвращает имя этой константы перечисления в точности в том виде, в котором оно объявлено в объявлении перечисления. |
final int |
ordinal() |
Возвращает порядковый номер этой константы перечисления (её позицию в объявлении перечисления; начальной константе присваивается номер 0). |
String |
toString() |
Возвращает имя этой константы перечисления, указанное в объявлении. |
static <T extends Enum<T>> |
valueOf |
Возвращает константу указанного класса перечисления с заданным именем. |
Методы, объявленные в классе Object
getClass, notify, notifyAll, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
final Class |
getClass() |
Возвращает класс среды выполнения для этого Object. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
final void |
wait() |
Переводит текущий поток в состояние ожидания до пробуждения, обычно в результате вызова notify или interrupt. |
final void |
wait |
Переводит текущий поток в состояние ожидания до пробуждения, обычно в результате вызова notify или interrupt, либо до истечения определённого времени. |
final void |
wait |
Переводит текущий поток в состояние ожидания до пробуждения, обычно в результате вызова notify или interrupt, либо до истечения определённого времени. |
Подробное описание констант перечисления
RELEASE_0
public static final SourceVersion RELEASE_0
RELEASE_1
public static final SourceVersion RELEASE_1
RELEASE_0 дополнен вложенными классами, как описано в обновлении 1.1 к Спецификации языка Java, первое издание.RELEASE_2
public static final SourceVersion RELEASE_2
strictfp.RELEASE_3
public static final SourceVersion RELEASE_3
RELEASE_2 нет.RELEASE_4
public static final SourceVersion RELEASE_4
- См. также:
RELEASE_5
public static final SourceVersion RELEASE_5
for и шестнадцатеричных литералов с плавающей точкой.- См. также:
RELEASE_6
public static final SourceVersion RELEASE_6
RELEASE_5 нет.- См. также:
RELEASE_7
public static final SourceVersion RELEASE_7
try-with-resources, строки в switch, двоичные литералы и multi-catch.- Начиная с:
- 1.7
- См. также:
RELEASE_8
public static final SourceVersion RELEASE_8
- Начиная с:
- 1.8
- См. также:
RELEASE_9
public static final SourceVersion RELEASE_9
- Начиная с:
- 9
- См. также:
RELEASE_10
public static final SourceVersion RELEASE_10
var).- Начиная с:
- 10
- См. также:
RELEASE_11
public static final SourceVersion RELEASE_11
- Начиная с:
- 11
- См. также:
RELEASE_12
public static final SourceVersion RELEASE_12
- Начиная с:
- 12
- См. также:
RELEASE_13
public static final SourceVersion RELEASE_13
- Начиная с:
- 13
- См. также:
RELEASE_14
public static final SourceVersion RELEASE_14
- Начиная с:
- 14
- См. также:
RELEASE_15
public static final SourceVersion RELEASE_15
- Начиная с:
- 15
- См. также:
RELEASE_16
public static final SourceVersion RELEASE_16
instanceof.- Начиная с:
- 16
- См. также:
RELEASE_17
public static final SourceVersion RELEASE_17
- Начиная с:
- 17
- См. также:
RELEASE_18
public static final SourceVersion RELEASE_18
- Начиная с:
- 18
- См. также:
RELEASE_19
public static final SourceVersion RELEASE_19
- Начиная с:
- 19
- См. также:
RELEASE_20
public static final SourceVersion RELEASE_20
- Начиная с:
- 20
- См. также:
RELEASE_21
public static final SourceVersion RELEASE_21
switch.- Начиная с:
- 21
- См. также:
RELEASE_22
public static final SourceVersion RELEASE_22
- Начиная с:
- 22
- См. также:
RELEASE_23
public static final SourceVersion RELEASE_23
- Начиная с:
- 23
- См. также:
RELEASE_24
public static final SourceVersion RELEASE_24
- Начиная с:
- 24
- См. также:
RELEASE_25
public static final SourceVersion RELEASE_25
- Начиная с:
- 25
- См. также:
RELEASE_26
public static final SourceVersion RELEASE_26
- Начиная с:
- 26
- См. также:
RELEASE_27
public static final SourceVersion RELEASE_27
- Начиная с:
- 27
- См. также:
Подробное описание методов
values
public static SourceVersion[] values()
- Возвращает:
- массив, содержащий константы этого класса перечисления в порядке их объявления
valueOf
public static SourceVersion valueOf(String name)
- Параметры:
-
name— имя возвращаемой константы перечисления. - Возвращает:
- константа перечисления с указанным именем
- Выбрасывает:
-
IllegalArgumentException— если в этом классе перечисления нет константы с указанным именем -
NullPointerException— если аргумент равен null
latest
public static SourceVersion latest()
- Возвращает:
- последняя версия исходного кода, которую можно моделировать
latestSupported
public static SourceVersion latestSupported()
RELEASE_9 или более поздняя.- Примечание к API:
- Этот метод включён наряду с
latest(), чтобы можно было выявлять ситуации, когда API языковой модели выполняется на версии платформы, отличной от последней версии, моделируемой API. Такая ситуация может возникнуть, например, если IDE или аналогичный инструмент использует API для моделирования версии исходного кода N, работая на версии платформы (N - 1). Такая конфигурация поддерживается API. Работа API на версиях платформы ниже (N - 1) или выше N может поддерживаться или не поддерживаться в зависимости от деталей реализации. Если процессор аннотаций генерирует код для выполнения в текущей среде выполнения, ему следует использовать только возможности платформы вплоть до выпускаlatestSupported, который может быть более ранним, чем выпускlatest. - Возвращает:
- последняя версия исходного кода, полностью поддерживаемая текущей средой выполнения
isIdentifier
public static boolean isIdentifier(CharSequence name)
name синтаксически допустимым идентификатором (простым именем) или ключевым словом в последней версии исходного кода. Метод возвращает true, если имя начинается с символа, для которого Character.isJavaIdentifierStart(int) возвращает true, а за ним следуют только символы, для которых Character.isJavaIdentifierPart(int) возвращает true. Этому шаблону соответствуют обычные идентификаторы, ключевые слова, контекстные ключевые слова, логические литералы и литерал null. Для всех остальных строк метод возвращает false.- Параметры:
-
name— проверяемая строка - Возвращает:
-
true, если эта строка является синтаксически допустимым идентификатором или ключевым словом; в противном случае —false. - См. Спецификацию языка Java:
- 3.8 Идентификаторы
isName
public static boolean isName(CharSequence name)
name синтаксически допустимым квалифицированным именем в последней версии исходного кода. Синтаксически квалифицированное имя представляет собой последовательность идентификаторов, разделённых точками («.»). Этот метод разбивает входную строку на сегменты, разделённые точками, и поочерёдно проверяет каждый сегмент. В отличие от isIdentifier, этот метод возвращает false для ключевых слов, логических литералов и литерала null в любом сегменте. Для контекстных ключевых слов метод возвращает true.- Параметры:
-
name— проверяемая строка - Возвращает:
-
true, если эта строка является синтаксически допустимым именем; в противном случае —false. - См. Спецификацию языка Java:
- 3.9 Ключевые слова
6.2 Имена и идентификаторы
isName
public static boolean isName(CharSequence name, SourceVersion version)
name синтаксически допустимым квалифицированным именем в указанной версии исходного кода. Синтаксически квалифицированное имя представляет собой последовательность идентификаторов, разделённых точками («.»). Этот метод разбивает входную строку на сегменты, разделённые точками, и поочерёдно проверяет каждый сегмент. В отличие от isIdentifier, этот метод возвращает false для ключевых слов, логических литералов и литерала null в любом сегменте. Для контекстных ключевых слов метод возвращает true.- Параметры:
-
name— проверяемая строка -
version— используемая версия - Возвращает:
-
true, если эта строка является синтаксически допустимым именем; в противном случае —false. - См. Спецификацию языка Java:
- 3.9 Ключевые слова
6.2 Имена и идентификаторы
- Начиная с:
- 9
isKeyword
public static boolean isKeyword(CharSequence s)
s ключевым словом, логическим литералом или литералом null в последней версии исходного кода. Для контекстных ключевых слов метод возвращает false.- Параметры:
-
s— проверяемая строка - Возвращает:
-
true, еслиsявляется ключевым словом, логическим литералом или литералом null; в противном случае —false. - См. Спецификацию языка Java:
- 3.9 Ключевые слова
3.10.3 Логические литералы
3.10.8 Литерал null
isKeyword
public static boolean isKeyword(CharSequence s, SourceVersion version)
s ключевым словом, логическим литералом или литералом null в указанной версии исходного кода. Для контекстных ключевых слов метод возвращает false.- Параметры:
-
s— проверяемая строка -
version— используемая версия - Возвращает:
-
true, еслиsявляется ключевым словом, логическим литералом или литералом null; в противном случае —false. - См. Спецификацию языка Java:
- 3.9 Ключевые слова
3.10.3 Логические литералы
3.10.8 Литерал null
- Начиная с:
- 9
valueOf
public static SourceVersion valueOf(Runtime.Version rv)
IllegalArgumentException. Поскольку до сих пор версии исходного кода языка программирования Java развивались линейно, для определения соответствия версии исходного кода учитывается только компонент функциональной версии среды выполнения. Если в будущем эта линейность изменится, результат могут определять и другие компоненты версии среды выполнения.
- Примечание к API:
- Выражение для преобразования строкового значения, например
"17", в соответствующую версию исходного кода,RELEASE_17, выглядит так:SourceVersion.valueOf(Runtime.Version.parse("17")) - Параметры:
-
rv— версия среды выполнения, преобразуемая в версию исходного кода - Возвращает:
- последняя версия исходного кода, пригодная для использования с переданной версией среды выполнения
- Выбрасывает:
-
IllegalArgumentException— если функциональная версия аргумента выше функциональной версии платформы. - Начиная с:
- 18
runtimeVersion
public Runtime.Version runtimeVersion()
null. Возвращаемая версия среды выполнения имеет достаточно большую функциональную версию для поддержки этой версии исходного кода; остальные компоненты не заданы. Для версий исходного кода, больших или равных RELEASE_6, результат всегда не равен null.- Возвращает:
- минимальная версия среды выполнения, поддерживающая эту версию исходного кода; в противном случае —
null - Начиная с:
- 18
© 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.