В Java Enum (перевод «перечисление») — это специальный тип данных, который представляет группу констант (неизменяемых переменных). Enum используются для определения набора предопределенных значений, которые может принимать переменная, что делает код более читабельным и менее подверженным ошибкам. Перечисления в Java имеют несколько свойств, которые делают их удобными для определения фиксированного набора констант. Некоторые ключевые свойства enum предоставляет в Java: values() Возвращает массив всех перечисляемых констант в том порядке, в котором они объявлены. valueOf() Возвращает значение Enum с указанным именем. Если имя не соответствует ни одной константе, выдается исключение IllegalArgumentException. ordinal() Возвращает позицию значения перечисления (индекс отсчитывается от 0). name() Возвращает имя значения как строку. compareTo() Сравнивает порядок двух перечислений на основе порядка их объявления.