Назад к вопросам
Junior — Middle
65
Как определить единственный абстрактный метод в интерфейсе, соответствующем функциональному интерфейсу в Java?
Ответ от нейросети
sobes.tech AI
В Java функциональный интерфейс — это интерфейс, который содержит ровно один абстрактный метод (SAM — Single Abstract Method). Чтобы определить такой метод, нужно убедиться, что в интерфейсе только один метод без реализации.
Пример:
@FunctionalInterface
public interface MyFunctionalInterface {
void execute(); // единственный абстрактный метод
// Можно добавить методы с реализацией по умолчанию
default void log() {
System.out.println("Logging...");
}
}
Аннотация @FunctionalInterface не обязательна, но рекомендуется, так как компилятор проверит, что интерфейс действительно функциональный.
Таким образом, единственный абстрактный метод — это метод без тела, который определяет контракт интерфейса, а все остальные методы либо отсутствуют, либо имеют реализацию по умолчанию или являются статическими.