Spec-Zone.ru › OpenJDK 27

Класс-перечисление Snippet.Kind

java.lang.Object
java.lang.Enum<Snippet.Kind>
jdk.jshell.Snippet.Kind
Все реализуемые интерфейсы:
Serializable, Comparable<Snippet.Kind>, Constable
Внешний класс:
Snippet
public static enum Snippet.Kind extends Enum<Snippet.Kind>
Описывает общий вид фрагмента кода. Kind — неизменяемое свойство Snippet. Оно доступно с помощью Snippet.kind(). Kind можно использовать, чтобы определить подкласс Snippet. Например, eval("int three() { return 3; }") вернёт событие создания фрагмента кода. Kind этого Snippet будет METHOD, из чего можно понять, что подкласс Snippet — это MethodSnippet, и его можно привести к этому типу.
Начиная с:
9

Краткое описание вложенных классов

Вложенные классы и интерфейсы, объявленные в классе Enum

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

Краткое описание констант перечисления

Константа перечисления Описание
ERRONEOUS
Синтаксически некорректный ввод, вид которого не удалось определить.
EXPRESSION
Выражение, с побочными эффектами или без них.
IMPORT
Объявление импорта: import ...
METHOD
Объявление метода.
STATEMENT
Оператор.
TYPE_DECL
Объявление типа.
VAR
Объявление одной переменной.

Краткое описание методов

Модификатор и тип Метод Описание
boolean isPersistent()
Указывает, является ли этот Kind Snippet постоянным.
static Snippet.Kind valueOf(String name)
Возвращает константу перечисления этого класса с указанным именем.
static Snippet.Kind[] values()
Возвращает массив, содержащий константы этого класса-перечисления в порядке их объявления.

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

clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
Модификатор и тип Метод Описание
protected final Object clone()
Выбрасывает CloneNotSupportedException.
final int compareTo(Snippet.Kind o)
Сравнивает это перечисление с указанным объектом, определяя порядок.
final Optional<Enum.EnumDesc<Snippet.Kind>> describeConstable()
Возвращает дескриптор перечисления EnumDesc для этого экземпляра, если его можно создать, или пустой объект Optional, если создать его нельзя.
final boolean equals(Object other)
Возвращает true, если указанный объект равен этой константе перечисления.
protected final void finalize()
Устарело, будет удалено: этот элемент API может быть удалён в будущей версии.
Механизм финализации объявлен устаревшим и подлежит удалению.
final Class<Snippet.Kind> getDeclaringClass()
Возвращает объект Class, соответствующий типу этого перечисления.
final int hashCode()
Возвращает хеш-код этой константы перечисления.
final String name()
Возвращает имя этой константы перечисления в точности так, как оно объявлено в объявлении перечисления.
final int ordinal()
Возвращает порядковый номер этой константы перечисления (её позицию в объявлении перечисления; первой константе присваивается номер 0).
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()
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством вызова notify или interrupt.
final void wait(long timeoutMillis)
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством вызова notify или interrupt, либо до истечения определённого времени.
final void wait(long timeoutMillis, int nanos)
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством вызова notify или interrupt, либо до истечения определённого времени.

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

IMPORT

public static final Snippet.Kind IMPORT
Объявление импорта: import ... Фрагмент кода является экземпляром ImportSnippet.

Импорт может быть одиночным импортом типа (Snippet.SubKind.SINGLE_TYPE_IMPORT_SUBKIND), одиночным статическим импортом (Snippet.SubKind.SINGLE_STATIC_IMPORT_SUBKIND), импортом типа по требованию (Snippet.SubKind.TYPE_IMPORT_ON_DEMAND_SUBKIND) или статическим импортом типа по требованию (Snippet.SubKind.SINGLE_STATIC_IMPORT_SUBKIND) — для их различения используйте Snippet.subKind().

Объявление импорта является постоянным.

См. Спецификацию языка Java:
7.5 Объявления импорта

TYPE_DECL

public static final Snippet.Kind TYPE_DECL
Объявление типа. К нему относятся: объявление обычного класса, объявление перечисления, объявление обычного интерфейса и объявление интерфейса аннотации. Фрагмент кода является экземпляром TypeDeclSnippet.

Объявление типа может быть интерфейсом Snippet.SubKind.INTERFACE_SUBKIND, классом Snippet.SubKind.CLASS_SUBKIND, перечислением или интерфейсом аннотации — для различения см. Snippet.SubKind.

Объявление типа является постоянным.

См. Спецификацию языка Java:
7.6 Объявления классов и интерфейсов верхнего уровня

METHOD

public static final Snippet.Kind METHOD
Объявление метода. Фрагмент кода является экземпляром MethodSnippet.

Объявление метода является постоянным.

См. Спецификацию языка Java:
8.4 Объявления методов

VAR

public static final Snippet.Kind VAR
Объявление одной переменной, соответствующее одному VariableDeclarator. Фрагмент кода является экземпляром VarSnippet.

Переменная может быть с инициализатором или без него либо временной переменной, представляющей выражение; для различения см. Snippet.SubKind.

Объявление переменной является постоянным.

См. Спецификацию языка Java:
8.3 Объявления полей

EXPRESSION

public static final Snippet.Kind EXPRESSION
Выражение, с побочными эффектами или без них. Фрагмент кода является экземпляром ExpressionSnippet.

В настоящее время выражение может быть либо простой именованной ссылкой на переменную (Snippet.SubKind.VAR_VALUE_SUBKIND), либо присваиванием (оба вида имеют естественные имена для ссылок); для различения см. Snippet.SubKind. Для всех остальных форм выражений (операторы, вызовы методов и т. д.) создаётся временная переменная, поэтому они относятся к виду VAR.

См. Спецификацию языка Java:
15 Выражения

STATEMENT

public static final Snippet.Kind STATEMENT
Оператор. Фрагмент кода является экземпляром StatementSnippet.
См. Спецификацию языка Java:
14.5 Операторы

ERRONEOUS

public static final Snippet.Kind ERRONEOUS
Синтаксически некорректный ввод, вид которого не удалось определить. Фрагмент кода является экземпляром ErroneousSnippet.

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

values

public static Snippet.Kind[] values()
Возвращает массив, содержащий константы этого класса-перечисления в порядке их объявления.
Возвращает:
массив, содержащий константы этого класса-перечисления в порядке их объявления

valueOf

public static Snippet.Kind valueOf(String name)
Возвращает константу перечисления этого класса с указанным именем. Строка должна точно совпадать с идентификатором, использованным для объявления константы перечисления в этом классе. (Пробелы и другие лишние символы не допускаются.)
Параметры:
name — имя возвращаемой константы перечисления.
Возвращает:
константу перечисления с указанным именем
Выбрасывает:
IllegalArgumentException — если в этом классе-перечислении нет константы с указанным именем
NullPointerException — если аргумент равен null

isPersistent

public boolean isPersistent()
Указывает, является ли этот Kind Snippet постоянным. Постоянными являются только объявления, поскольку они влияют на последующие фрагменты кода.

Обратите внимание: даже если Kind Snippet может быть постоянным, это не означает, что сам фрагмент кода сохранится; например, он может быть недопустимым или удалённым. См.: Snippet.Status.isDefined().

Возвращает:
true, если этот Kind Snippet виден последующим вычислениям; в противном случае — false

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по 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