Перечисление SourceVersion
- Все реализованные интерфейсы:
-
Serializable,Comparable<SourceVersion>,Constable
public enum SourceVersion extends Enum<SourceVersion>
Версии языка программирования Java. Обратитесь к соответствующему изданию спецификации языка Java для получения информации о конкретной версии.
Обратите внимание, что дополнительные константы версии исходного кода будут добавлены для моделирования будущих выпусков языка.
- С момента:
- 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_2 |
Версия, распознаваемая Java 2 Platform, Standard Edition, v 1.2. |
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() |
Возвращает последнюю версию исходного кода, полностью поддерживаемую текущей средой выполнения. |
static SourceVersion |
valueOf |
Возвращает константу перечисления этого класса с заданным именем. |
static SourceVersion[] |
values() |
Возвращает массив, содержащий константы этого класса перечисления в порядке их объявления. |
Подробности констант перечисления
RELEASE_0
public static final SourceVersion RELEASE_0
Исходная версия. Язык, описанный в Спецификации языка Java, первое издание.
RELEASE_1
public static final SourceVersion RELEASE_1
Версия, распознаваемая платформой Java 1.1. Язык
RELEASE_0 дополнен вложенными классами, как описано в обновлении 1.1 к Спецификации языка Java, первое издание.RELEASE_2
public static final SourceVersion RELEASE_2
Версия, распознаваемая платформой Java 2 Platform, Standard Edition, v 1.2. Язык описан в Спецификации языка Java, второе издание, который включает модификатор
strictfp.RELEASE_3
public static final SourceVersion RELEASE_3
Версия, распознаваемая платформой Java 2 Platform, Standard Edition, v 1.3. Без существенных изменений от
RELEASE_2.RELEASE_4
public static final SourceVersion RELEASE_4
Версия, распознаваемая платформой Java 2 Platform, Standard Edition, v 1.4. Добавлена простая система проверки утверждений.
RELEASE_5
public static final SourceVersion RELEASE_5
Версия, распознаваемая платформой Java 2 Platform, Standard Edition 5.0. Язык, описанный в Спецификации языка Java, третье издание. Первая версия, поддерживающая дженерики, аннотации, автоупаковку, var-args, улучшенный
for цикл и шестнадцатеричные литералы с плавающей точкой.RELEASE_6
public static final SourceVersion RELEASE_6
Версия, распознаваемая платформой Java Platform, Standard Edition 6. Без существенных изменений от
RELEASE_5.RELEASE_7
public static final SourceVersion RELEASE_7
Версия, распознаваемая платформой Java Platform, Standard Edition 7. Добавлен синтаксис алмазов для конструкторов,
try-с-ресурсами, строки в операторе switch, двоичные литералы и многократный catch.- Since:
- 1.7
RELEASE_8
public static final SourceVersion RELEASE_8
Версия, распознаваемая платформой Java Platform, Standard Edition 8. Добавлены лямбда-выражения и методы по умолчанию.
- Since:
- 1.8
RELEASE_9
public static final SourceVersion RELEASE_9
Версия, распознаваемая платформой Java Platform, Standard Edition 9. Добавлены модули и удаление одиночного подчеркивания из набора допустимых идентификаторов.
- Since:
- 9
RELEASE_10
public static final SourceVersion RELEASE_10
Версия, распознаваемая платформой Java Platform, Standard Edition 10. Добавлен вывод типа локальной переменной (
var).- Since:
- 10
RELEASE_11
public static final SourceVersion RELEASE_11
Версия, распознаваемая платформой Java Platform, Standard Edition 11. Добавлен синтаксис локальной переменной для параметров лямбда-выражений.
- Since:
- 11
RELEASE_12
public static final SourceVersion RELEASE_12
Версия, распознаваемая платформой Java Platform, Standard Edition 12.
- Since:
- 12
RELEASE_13
public static final SourceVersion RELEASE_13
Версия, распознаваемая платформой Java Platform, Standard Edition 13.
- Since:
- 13
RELEASE_14
public static final SourceVersion RELEASE_14
Версия, распознаваемая платформой Java Platform, Standard Edition 14. Добавлены выражения switch.
- Since:
- 14
RELEASE_15
public static final SourceVersion RELEASE_15
Версия, распознаваемая платформой Java Platform, Standard Edition 15. Добавлены текстовые блоки.
- Since:
- 15
RELEASE_16
public static final SourceVersion RELEASE_16
Версия, распознаваемая платформой Java Platform, Standard Edition 16. Добавлены шаблоны соответствия для
instanceof и записей.- Since:
- 16
RELEASE_17
public static final SourceVersion RELEASE_17
Версия, распознаваемая платформой Java Platform, Standard Edition 17. Добавлены запечатанные классы и восстановлены всегда-строгие семантика чисел с плавающей точкой.
- Since:
- 17
Подробности методов
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. Этот шаблон соответствует обычным идентификаторам, ключевым словам, ограниченным ключевым словам, ограниченным идентификаторам и литералам "true", "false", "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
© 1993, 2021, 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/17/docs/api/java.compiler/javax/lang/model/SourceVersion.html