Sobes.tech
Назад к вопросам
Junior — Middle
83

Какой шаблон проектирования используется для реализации перечислений?

Ответ от нейросети

sobes.tech AI

Для реализации перечислений (enum) часто используется шаблон проектирования "Тип Безопасного Перечисления" (Typesafe Enum). В Java до появления встроенного enum (до Java 5) этот шаблон реализовывался через создание класса с приватным конструктором и набором публичных статических финальных экземпляров этого класса.

Пример:

public class Day {
    public static final Day MONDAY = new Day("Monday");
    public static final Day TUESDAY = new Day("Tuesday");

    private String name;

    private Day(String name) {
        this.name = name;
    }

    public String toString() {
        return name;
    }
}

С появлением enum в Java 5 рекомендуется использовать встроенный enum, который реализует этот шаблон на уровне языка.