Класс-перечисление SourceVersion
- Все реализованные интерфейсы:
Serializable, Comparable<SourceVersion>, Constable
public enum SourceVersion extends Enum<SourceVersion>
Обратите внимание, что для моделирования будущих выпусков языка будут добавлены дополнительные константы версий исходного кода.
- С:
- 1.6
- См. также:
Краткое описание вложенных классов
Вложенные классы/интерфейсы, объявленные в классе 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 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
- Начиная с:
- 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
- См. также:
Подробное описание методов
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 до сих пор развивались линейно, для определения соответствия версии исходного кода запрашивается только компонент 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://docs.oracle.com/en/java/javase/25/docs/api/java.compiler/javax/lang/model/SourceVersion.html