Перечисление MethodHandles.Lookup.ClassOption
- Все реализуемые интерфейсы:
Serializable, Comparable<MethodHandles.Lookup.ClassOption>, Constable
- Внешний класс:
MethodHandles.Lookup
public static enum MethodHandles.Lookup.ClassOption extends Enum<MethodHandles.Lookup.ClassOption>
Набор параметров класса, определяющих, добавляется ли скрытый класс, созданный методом
Lookup::defineHiddenClass, динамически в качестве нового члена к гнезду класса поиска и/или имеет ли скрытый класс сильную связь с загрузчиком классов, помеченным как его определяющий загрузчик.- Начиная с версии:
- 15
Краткое описание вложенных классов
Вложенные классы/интерфейсы, объявленные в классе Enum
Enum.EnumDesc<E> | Модификатор и тип | Класс | Описание |
|---|---|---|
static final class |
Enum.EnumDesc<E extends Enum<E>> |
Номинальный дескриптор константы enum. |
Краткое описание констант перечисления
| Константа перечисления | Описание |
|---|---|
NESTMATE |
Указывает, что скрытый класс следует добавить к гнезду класса поиска в качестве класса-члена гнезда. |
STRONG |
Указывает, что скрытый класс имеет сильную связь с загрузчиком классов, помеченным как его определяющий загрузчик, подобно тому, как обычный класс или интерфейс связан со своим определяющим загрузчиком. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
static MethodHandles.Lookup.ClassOption |
valueOf |
Возвращает константу перечисления этого класса с указанным именем. |
static MethodHandles.Lookup.ClassOption[] |
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() |
Возвращает порядковый номер этой константы перечисления (её позицию в объявлении перечисления, где начальной константе присваивается порядковый номер ноль). |
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() |
Заставляет текущий поток ожидать, пока он не будет разбужен, обычно посредством уведомления или прерывания. |
final void |
wait |
Заставляет текущий поток ожидать, пока он не будет разбужен, обычно посредством уведомления или прерывания, либо пока не истечет заданный промежуток реального времени. |
final void |
wait |
Заставляет текущий поток ожидать, пока он не будет разбужен, обычно посредством уведомления или прерывания, либо пока не истечет заданный промежуток реального времени. |
Подробное описание констант перечисления
NESTMATE
public static final MethodHandles.Lookup.ClassOption NESTMATE
Указывает, что скрытый класс следует добавить к гнезду класса поиска в качестве класса-члена гнезда.
Скрытый класс-член гнезда имеет доступ к закрытым членам всех классов и интерфейсов в том же гнезде.
- См. также:
STRONG
public static final MethodHandles.Lookup.ClassOption STRONG
Указывает, что скрытый класс имеет сильную связь с загрузчиком классов, помеченным как его определяющий загрузчик, подобно тому, как обычный класс или интерфейс связан со своим определяющим загрузчиком. Это означает, что скрытый класс может быть выгружен тогда и только тогда, когда его определяющий загрузчик недостижим и, следовательно, может быть освобожден сборщиком мусора (JLS §12.7).
По умолчанию скрытый класс или интерфейс может быть выгружен, даже если загрузчик классов, помеченный как его определяющий загрузчик, достижим.
- См. Спецификацию языка Java:
- 12.7. Выгрузка классов и интерфейсов
Подробное описание методов
values
public static MethodHandles.Lookup.ClassOption[] values()
Возвращает массив, содержащий константы этого класса-перечисления в порядке их объявления.
- Возвращает:
- массив, содержащий константы этого класса-перечисления в порядке их объявления
valueOf
public static MethodHandles.Lookup.ClassOption valueOf(String name)
Возвращает константу перечисления этого класса с указанным именем. Строка должна точно совпадать с идентификатором, использованным для объявления константы перечисления в этом классе. (Пробелы в начале и конце строки не допускаются.)
- Параметры:
-
name— имя возвращаемой константы перечисления. - Возвращает:
- константа перечисления с указанным именем
- Выбрасывает:
-
IllegalArgumentException— если в этом классе-перечислении нет константы с указанным именем -
NullPointerException— если аргумент равен null
© 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.