Junior
21
0
questionbank

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

Ответ от нейросети sobes.tech

Функциональный интерфейс — это интерфейс, который содержит ровно один абстрактный метод. Он может содержать дефолтные (default) и статические (static) методы. Используется для работы с лямбда-выражениями и ссылками на методы.

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

Примеры стандартных функциональных интерфейсов из пакета java.util.function:

  • Predicate<T>: Принимает аргумент типа T и возвращает boolean. Один абстрактный метод: boolean test(T t);.
  • Consumer<T>: Принимает аргумент типа T и ничего не возвращае

Функциональный интерфейс — это интерфейс, который содержит ровно один абстрактный метод. Он может содержать дефолтные (default) и статические (static) методы. Используется для работы с лямбда-выражениями и ссылками на методы.

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

Примеры стандартных функциональных интерфейсов из пакета java.util.function:

  • Predicate<T>: Принимает аргумент типа T и возвращает boolean. Один абстрактный метод: boolean test(T t);.
  • Consumer<T>: Принимает аргумент типа T и ничего не возвращае

Зарегистрируйтесь или войдите, чтобы получить доступ к полным ответам на все вопросы из банка вопросов.

functionalInterfacejava-interoperabilitylambdasdelegates