Junior — Middle
Quelle est la quantité maximale de méthodes avec des implémentations par défaut autorisées dans une interface fonctionnelle?
sobes.tech IA
Réponse de l'IA
В функциональном интерфейсе (в Java — интерфейс с одним абстрактным методом) допускается любое количество методов с реализацией по умолчанию (default methods). Ограничений на количество default-методов нет.
Главное требование — чтобы интерфейс содержал ровно один абстрактный метод, который и определяет функциональный интерфейс. Все остальные методы могут иметь реализацию по умолчанию.
Пример:
@FunctionalInterface
public interface MyFunction {
void apply(); // единственный абстрактный метод
default void log() {
System.out.println("Logging...");
}
default void reset() {
System.out.println("Resetting...");
}
}
Таким образом, функциональный интерфейс может иметь сколько угодно default-методов, но только один абстрактный.