Java Core middle

Что такое Функциональный интерфейс?

Ответ

Ровно один абстрактный метод (SAM). @FunctionalInterface — опциональная аннотация, но защищает от случайного добавления второго метода; лямбда компилируется и без неё. Default- и static-методы разрешены. Основные: Function<T,R>, Predicate<T>, Consumer<T>, Supplier<T>, UnaryOperator<T>.

Разбор: Функциональный интерфейс имеет ровно один абстрактный метод (SAM); аннотация @FunctionalInterface опциональна и лишь страхует от случайного добавления второго метода — лямбда компилируется и без неё. Default- и static-методы разрешены, обобщённые параметры (Function<T,R>) допустимы, а двух абстрактных методов быть не может.

Хочешь так же по своей компании — с вопросами по грейдам и задачами? Закажи гайд или забери свежее в Telegram.

Заказать гайд Пройти тест
новые гайды и свежие вопросы с собесов — первыми в Telegram Смотреть гайды Подписаться