Sobes.tech
Junior — Middle
66

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

Компании, где спрашивали
Effective Mobile

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

sobes.tech AI

В Java начиная с версии 9 в интерфейсах появились приватные методы с конкретной реализацией. Они используются для того, чтобы избежать дублирования кода между методами по умолчанию (default methods) внутри интерфейса. Приватные методы не видны вне интерфейса и не могут быть переопределены в классах, которые его реализуют.

Пример:

public interface MyInterface {
    default void defaultMethod1() {
        commonLogic();
        System.out.println("Default Method 1");
    }

    default void defaultMethod2() {
        commonLogic();
        System.out.println("Default Method 2");
    }

    private void commonLogic() {
        System.out.println("Общая логика для default методов");
    }
}