Java Core trainee

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

Ответ

Интерфейс с РОВНО ОДНИМ абстрактным методом (default и static не считаются). Можно реализовать лямбдой. @FunctionalInterface — необязательная аннотация для compile-time проверки.

Разбор: Функциональный интерфейс содержит ровно один абстрактный метод (SAM), при этом default- и static-методы не учитываются, а аннотация @FunctionalInterface лишь опционально включает compile-time проверку. Ловушки: лямбда требует именно одного абстрактного метода (не нуля и не нескольких), а аннотация не обязательна для совместимости с лямбдой.

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

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