3 года назад
enum в Java: очевидное - невероятное
Всем привет! Хочу рассказать про ряд неочевидных особенностей enum в Java. Поехали! 1) enum - это полноценный класс, у него могут быть поля, методы, обычные и статические 2) любой enum неявно (!) расширяет абстрактный класс Enum, поэтому наследовать enum от кого-то другого нельзя. Например, один enum от другого. При этом добавить final для enum нельзя, т.к. он уже фактически final) 3) зато enum может реализовывать интерфейсы, как и любой другой класс в Java 4) самое интересное - каждое значение enum является наследником самого enum. Т.е. можно объявить метод show в enum Direction и переопределить его Direction...
9 месяцев назад
Enum в Java
Enum в Java представляет собой тип, предназначенный для представления наборов фиксированных констант. В отличие от констант, объявленных с помощью ключевого слова final, перечисления не только ограничивают возможные значения, но и делают код более читаемым и безопасным для поддержки. Перечисления часто используются для описания дней недели, сезонов, операций и других категорий сущностей, где число возможных значений заранее известно и неизменно в момент выполнения программы. Перечисляемый тип в Java объявляется с использованием ключевого слова enum...