Встречается на собеседованиях • сегодня

Может ли у функционального интерфейса быть 2 метода

Нет, функциональный интерфейс может иметь только один абстрактный метод (SAM - Single Abstract Method). Однако он может содержать:

  1. Методы по умолчанию (default)
  2. Статические методы
  3. Методы из Object (например, toString())

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

java
@FunctionalInterface
interface Processor {
    void process(String input); // единственный абстрактный метод
    
    default void log() { /* default метод */ }
    static void print() { /* static метод */ }
}

Если добавить второй абстрактный метод, компилятор выдаст ошибку из-за аннотации @FunctionalInterface.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы