Sobes.tech
Back to questions
Junior — Middle
72

Какое максимальное количество методов разрешено в интерфейсе с функциональным назначением?

Answer from AI

sobes.tech AI

В Android (а точнее в Java) интерфейс с функциональным назначением (functional interface) должен содержать ровно один абстрактный метод. Это ограничение связано с тем, что функциональные интерфейсы предназначены для использования с лямбда-выражениями и ссылками на методы.

Таким образом, максимальное количество абстрактных методов в функциональном интерфейсе — один. При этом интерфейс может содержать любое количество методов по умолчанию (default) или статических методов.

Пример функционального интерфейса:

@FunctionalInterface
public interface MyFunction {
    void apply(); // единственный абстрактный метод

    default void log() {
        System.out.println("Logging");
    }
}