Sobes.tech
Junior — Middle
114

Czy interfejs zawierający tylko jedną metodę można uznać za interfejs funkcyjny zgodnie ze standardami Java?

Firmy, w których zadano pytania
ITFB Group

Odpowiedź od AI

sobes.tech AI

Да, в Java интерфейс, который содержит ровно один абстрактный метод, считается функциональным интерфейсом. Это определение закреплено в спецификации Java 8 и выше. Такой интерфейс можно использовать в лямбда-выражениях и ссылках на методы.

Для явного указания, что интерфейс является функциональным, используется аннотация @FunctionalInterface, хотя она не обязательна, но помогает компилятору проверять соответствие.

Пример:

@FunctionalInterface
public interface MyFunction {
    void execute();
}

// Использование с лямбда-выражением
MyFunction func = () -> System.out.println("Hello");
func.execute();