Назад к вопросам
Senior
13
Зачем нужен дефолтный метод в интерфейсе?
Компании, где спрашивали
ИП Ганус Александр Андреевич
Ответ от нейросети
sobes.tech AI
Дефолтный метод в интерфейсе нужен для того, чтобы предоставить реализацию метода прямо в интерфейсе, не заставляя все классы, которые его реализуют, обязательно переопределять этот метод.
Это позволяет:
- Добавлять новые методы в интерфейс без нарушения существующих реализаций.
- Предоставлять стандартное поведение, которое можно переопределить при необходимости.
Например, в Java 8 дефолтные методы позволяют расширять интерфейсы, не ломая обратную совместимость.
Пример на Java:
public interface Logger {
void log(String message);
default void logError(String error) {
log("ERROR: " + error);
}
}
Здесь logError имеет дефолтную реализацию, и классы, реализующие Logger, могут не писать этот метод, если стандартное поведение их устраивает.