Back to questions
Junior — Middle
64
Можешь описать основные особенности функциональных интерфейсов в программировании?
Answer from AI
sobes.tech AI
Функциональные интерфейсы в программировании — это интерфейсы с одним абстрактным методом. Они широко используются для поддержки функционального программирования, особенно в Java 8 и выше.
Основные особенности:
- Один абстрактный метод — позволяет использовать лямбда-выражения или ссылки на методы для реализации.
- Аннотация
@FunctionalInterface— не обязательна, но рекомендуется для явного указания функционального интерфейса и проверки компилятором. - Могут содержать дефолтные и статические методы — но только один абстрактный.
Пример функционального интерфейса и его использования:
@FunctionalInterface
interface Converter<F, T> {
T convert(F from);
}
Converter<String, Integer> stringToInteger = Integer::valueOf;
int number = stringToInteger.convert("123");
Это упрощает код, делает его более читаемым и поддерживает функциональный стиль программирования.