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

Можно ли определить реализацию метода внутри интерфейса в языке программирования?

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

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

sobes.tech AI

Да, в современных версиях Java (начиная с Java 8) появилась возможность определять реализацию методов внутри интерфейса с помощью default-методов и static-методов.

  • default-методы позволяют задать стандартную реализацию, которую могут использовать все классы, реализующие интерфейс, или переопределять её при необходимости.
  • static-методы в интерфейсе — это методы, которые принадлежат самому интерфейсу и вызываются через имя интерфейса.

Пример:

public interface MyInterface {
    void abstractMethod(); // обычный абстрактный метод

    default void defaultMethod() {
        System.out.println("Реализация по умолчанию");
    }

    static void staticMethod() {
        System.out.println("Статический метод интерфейса");
    }
}

Это позволяет расширять интерфейсы без нарушения существующего кода, добавляя новые методы с реализацией.