Sobes.tech
Назад к вопросам
Senior
8

Может ли enum реализовать интерфейс?

Компании, где спрашивали
СБЕРСБЕР

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

sobes.tech AI

Да, в Java enum может реализовывать интерфейс. Это позволяет задать набор методов, которые должны быть реализованы каждым элементом enum, обеспечивая полиморфизм.

Пример:

interface Operation {
    double apply(double x, double y);
}

public enum BasicOperation implements Operation {
    PLUS {
        public double apply(double x, double y) { return x + y; }
    },
    MINUS {
        public double apply(double x, double y) { return x - y; }
    },
    TIMES {
        public double apply(double x, double y) { return x * y; }
    },
    DIVIDE {
        public double apply(double x, double y) { return x / y; }
    };
}

Таким образом, каждый элемент enum реализует метод интерфейса, что позволяет использовать enum как набор стратегий или операций.