Класс Enum<E extends Enum<E>>
- Параметры типа:
E- Тип подкласса перечисления
- Все реализуемые интерфейсы:
Serializable, Comparable<E>, Constable
public abstract class Enum<E extends Enum<E>> extends Object implements Constable, Comparable<E>, Serializable
serialVersionUID; подробности см. в Спецификации сериализации объектов Java. Обратите внимание: при использовании типа перечисления в качестве типа множества или типа ключей карты доступны специализированные и эффективные реализации множества и карты.
- См. Спецификацию языка Java:
- 8.9 Классы перечислений
8.9.3 Элементы перечислений
- Начиная с версии:
- 1.5
- Внешние спецификации
- См. также:
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
static final class |
Enum.EnumDesc<E extends Enum<E>> |
Номинальный дескриптор константы enum. |
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Единственный конструктор. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
protected final Object |
clone() |
Вызывает исключение CloneNotSupportedException. |
final int |
compareTo |
Сравнивает это перечисление с указанным объектом для определения порядка. |
final Optional |
describeConstable() |
Возвращает дескриптор перечисления EnumDesc для этого экземпляра, если его можно создать, или пустой Optional, если создать его невозможно. |
final boolean |
equals |
Возвращает true, если указанный объект равен этой константе перечисления. |
protected final void |
finalize() |
Устарел, будет удалён: этот элемент API может быть удалён в будущей версии. Метод finalize устарел и будет удалён. |
final Class |
getDeclaringClass() |
Возвращает объект Class, соответствующий типу перечисления этой константы. |
final int |
hashCode() |
Возвращает хеш-код этой константы перечисления. |
final String |
name() |
Возвращает имя этой константы перечисления в точности так, как оно объявлено в объявлении перечисления. |
final int |
ordinal() |
Возвращает порядковый номер этой константы перечисления (её позицию в объявлении перечисления, где первой константе присваивается номер 0). |
String |
toString() |
Возвращает имя этой константы перечисления, указанное в объявлении. |
static <T extends Enum<T>> |
valueOf |
Возвращает константу указанного класса перечисления с указанным именем. |
Подробное описание конструкторов
Enum
protected Enum(String name, int ordinal)
- Параметры:
-
name- Имя этой константы перечисления — идентификатор, используемый для её объявления. -
ordinal- Порядковый номер этой константы перечисления (её позиция в объявлении перечисления, где первой константе присваивается номер 0).
Подробное описание методов
name
public final String name()
toString(), поскольку метод toString может возвращать более удобное для пользователя имя. Этот метод предназначен главным образом для использования в специализированных ситуациях, когда правильность зависит от получения точного имени, которое не будет меняться от версии к версии.- Возвращает:
- имя этой константы перечисления
ordinal
public final int ordinal()
EnumSet и EnumMap.- Возвращает:
- порядковый номер этой константы перечисления
toString
public String toString()
equals
public final boolean equals(Object other)
hashCode
clone
protected final Object clone() throws CloneNotSupportedException
- Переопределяет:
-
cloneв классеObject - Возвращает:
- (никогда не возвращает значение)
- Вызывает:
-
CloneNotSupportedException- если класс объекта не поддерживает интерфейсCloneable. Подклассы, переопределяющие методclone, также могут вызывать это исключение, указывая, что экземпляр нельзя клонировать. - См. также:
compareTo
public final int compareTo(E o)
- Определён в:
-
compareToв интерфейсеComparable<E extends Enum<E>> - Параметры:
-
o- объект для сравнения. - Возвращает:
- отрицательное целое число, ноль или положительное целое число, если этот объект меньше, равен или больше указанного объекта соответственно.
getDeclaringClass
public final Class<E> getDeclaringClass()
Object.getClass(), для констант перечисления с телами классов, специфичными для отдельных констант.)- Возвращает:
- объект Class, соответствующий типу перечисления этой константы
describeConstable
public final Optional<Enum.EnumDesc<E>> describeConstable()
EnumDesc для этого экземпляра, если его можно создать, или пустой Optional, если создать его невозможно.- Определён в:
-
describeConstableв интерфейсеConstable - Возвращает:
Optional, содержащий полученный номинальный дескриптор, или пустойOptional, если создать его невозможно.- Начиная с версии:
- 12
valueOf
public static <T extends Enum<T>> T valueOf(Class<T> enumClass, String name)
Обратите внимание: для конкретного класса перечисления T вместо этого метода для преобразования имени в соответствующую константу перечисления можно использовать неявно объявленный метод public static T valueOf(String) этого перечисления. Все константы класса перечисления можно получить, вызвав неявный метод public static T[] values() этого класса.
- Параметры типа:
T- Класс перечисления, константу которого необходимо вернуть- Параметры:
-
enumClass- объектClassкласса перечисления, из которого нужно вернуть константу -
name- имя возвращаемой константы - Возвращает:
- константу указанного класса перечисления с указанным именем
- Вызывает:
-
IllegalArgumentException- если указанный класс перечисления не содержит константы с указанным именем или указанный объект класса не представляет класс перечисления -
NullPointerException- еслиenumClassилиnameимеет значение null - Начиная с версии:
- 1.5
finalize
@Deprecated(since="18", forRemoval=true) protected final void finalize()
Object.finalize().
© 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.base/java/lang/Enum.html