Перечисление SourceVersion
- Все реализованные интерфейсы:
-
Serializable,Comparable<SourceVersion>,Constable
public enum SourceVersion extends Enum<SourceVersion>
Обратите внимание, что к константам версии исходного кода будут добавлены дополнительные константы для будущих релизов языка.
- С тех пор:
- 1.6
- См. также:
Краткое описание вложенных классов
Вложенные классы/интерфейсы, объявленные в классе java.lang.Enum
Enum.EnumDesc<E extends Enum<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_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() |
Возвращает массив, содержащий константы этого класса перечисления в порядке их объявления. |
Подробности констант перечисления
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, двоичные литералы и многократный 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
- Since:
- 20
- See Also:
RELEASE_21
public static final SourceVersion RELEASE_21
switch.- Since:
- 21
- See Also:
RELEASE_22
public static final SourceVersion RELEASE_22
- Since:
- 22
- See Also:
RELEASE_23
public static final SourceVersion RELEASE_23
- Since:
- 23
- See Also:
RELEASE_24
public static final SourceVersion RELEASE_24
- Since:
- 24
- See Also:
Подробности методов
values
public static SourceVersion[] values()
- Returns:
- массив, содержащий константы этого класса перечисления в порядке их объявления
valueOf
public static SourceVersion valueOf(String name)
- Parameters:
-
name- имя константы перечисления, которое нужно вернуть. - Returns:
- константу перечисления с указанным именем
- Throws:
-
IllegalArgumentException- если в этом классе перечисления нет константы с указанным именем -
NullPointerException- если аргумент равен null
latest
public static SourceVersion latest()
- Returns:
- последнюю версию исходного кода, которую можно смоделировать
latestSupported
public static SourceVersion latestSupported()
RELEASE_9 или более поздняя версия должны быть возвращены.- API Note:
- Этот метод включён вместе с
latest(), чтобы позволить идентифицировать ситуации, когда API модели языка работает на платформе, отличной от последней моделируемой версии API. Один из способов возникновения такой ситуации — если IDE или аналогичный инструмент использует API для моделирования версии исходного кода N, а работает на платформе версии (N - 1). Работа в такой конфигурации поддерживается API. Запуск API на платформах, более ранних, чем (N - 1) или более поздних, чем N, может или не может работать в качестве детали реализации. Если процессор аннотаций генерировал код для выполнения в текущей среде выполнения, процессор должен использовать только платформенные функции до релизаlatestSupported, который может быть ранее, чем релизlatest. - Returns:
- последнюю версию исходного кода, полностью поддерживаемую текущей средой выполнения
isIdentifier
public static boolean isIdentifier(CharSequence name)
name синтаксически допустимым идентификатором (простым именем) или ключевым словом в последней версии исходного кода. Метод возвращает true, если имя состоит из начального символа, для которого Character.isJavaIdentifierStart(int) возвращает true, за которым следуют только символы, для которых Character.isJavaIdentifierPart(int) возвращает true. Этот шаблон соответствует обычным идентификаторам, ключевым словам, контекстным ключевым словам, булевым литералам и литералу null. Метод возвращает false для всех других строк.- Parameters:
-
name- строка для проверки - Returns:
-
true, если эта строка является синтаксически допустимым идентификатором или ключевым словом,falseв противном случае. - See Java Language Specification:
- 3.8 Идентификаторы
isName
public static boolean isName(CharSequence name)
name синтаксически допустимым полным именем в последней версии исходного кода. Синтаксически полное имя — это последовательность идентификаторов, разделенных точками ("."). Этот метод разделяет входную строку на сегменты, разделенные точками, и последовательно применяет проверки к каждому сегменту. В отличие от isIdentifier, этот метод возвращает false для ключевых слов, булевых литералов и литерала null в любом сегменте. Этот метод возвращает true для контекстных ключевых слов.- Parameters:
-
name- строка для проверки - Returns:
-
true, если эта строка является синтаксически допустимым именем,falseв противном случае. - See Java Language Specification:
- 3.9 Ключевые слова
6.2 Имена и идентификаторы
isName
public static boolean isName(CharSequence name, SourceVersion version)
name синтаксически допустимым полным именем в заданной версии исходного кода. Синтаксически полное имя — это последовательность идентификаторов, разделенных точками ("."). Этот метод разделяет входную строку на сегменты, разделенные точками, и последовательно применяет проверки к каждому сегменту. В отличие от isIdentifier, этот метод возвращает false для ключевых слов, булевых литералов и литерала null в любом сегменте. Этот метод возвращает true для контекстных ключевых слов.- Parameters:
-
name- строка для проверки -
version- версия для использования - Returns:
-
true, если эта строка является синтаксически допустимым именем,falseв противном случае. - See Java Language Specification:
- 3.9 Ключевые слова
6.2 Имена и идентификаторы
- Since:
- 9
isKeyword
public static boolean isKeyword(CharSequence s)
s ключевым словом, булевым литералом или литералом null в последней версии исходного кода. Этот метод возвращает false для контекстных ключевых слов.- Parameters:
-
s- строка для проверки - Returns:
-
true, еслиsявляется ключевым словом, булевым литералом или литералом null,falseв противном случае. - See Java Language Specification:
- 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 до сих пор следовали линейному прогрессу, для определения сопоставления с версией исходного кода используется только компонент feature версии среды выполнения. Если эта линейность изменится в будущем, другие компоненты версии среды выполнения могут повлиять на результат.
- Примечание API:
- Выражение для преобразования из строкового значения, например
"17", в соответствующую версию исходного кодаRELEASE_17:SourceVersion.valueOf(Runtime.Version.parse("17")) - Параметры:
-
rv- версия среды выполнения, для которой нужно определить версию исходного кода - Возвращает:
- самую последнюю версию исходного кода, которая может быть использована в рамках заданной версии среды выполнения
- Исключения:
-
IllegalArgumentException- если функция feature аргумента версии больше, чем функция feature платформенной версии. - С версии:
- 18
runtimeVersion
public Runtime.Version runtimeVersion()
null. Возвращаемая версия среды выполнения имеет значение feature, достаточное для поддержки данной версии исходного кода, и не содержит других элементов. Версии исходного кода, большие или равные 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.
https://download.java.net/java/early_access/jdk24/docs/api/java.compiler/javax/lang/model/SourceVersion.html