Sobes.tech
Back to questions
Junior — Middle
59

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

Answer from AI

sobes.tech AI

В Java функциональный интерфейс — это интерфейс с ровно одним абстрактным методом. Это ключевое требование для использования таких интерфейсов с лямбда-выражениями и ссылками на методы.

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

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

@FunctionalInterface
public interface MyFunction {
    void execute();
}

Если добавить второй абстрактный метод, например:

void anotherMethod();

то интерфейс перестанет быть функциональным.

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