Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Java: functional, interface, lambda

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

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

Короткий ответ

Функциональный интерфейс — это интерфейс с одним абстрактным методом. Он используется как цель для лямбда-выражений и method reference. В Java есть готовые функциональные интерфейсы, но можно создавать и свои. Они упрощают передачу п

Длинный ответ

Функциональные интерфейсы появились как фундамент для внедрения функционального стиля в Java.

Определение

Функциональный интерфейс — это интерфейс, который содержит ровно один абстрактный метод и может быть реализован с помощью лямбда-выражения.

Ключевые особенности

Перед перечислением важно понимать: наличие default-методов не нарушает функциональность интерфейса.

1) Один абстрактный метод

  1. Метод определяет контракт поведения

  2. Именно он реализуется лямбдой

2) Аннотация @FunctionalInterface

  1. Необязательна

  2. Защищает от случайного добавления методов

  3. Улучшает читаемость кода

3) Использование с лямбдами

Runnable task = () -> System.out.println("Hello");

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

  1. Runnable

  2. Callable

  3. Predicate

  4. Function

  5. Consumer

  6. Supplier

Краткий вывод

Функциональные интерфейсы позволяют передавать поведение как данные и являются основой Stream API и лямбда-выражений.

Уровень

  • Рейтинг:

    5

  • Сложность:

    3

Навыки

  • Java

    Java

Ключевые слова

#functional

#interface

#lambda

Подпишись на Java Developer в телеграм