Junior — Middle
Est-il possible de définir l'implémentation d'une méthode à l'intérieur d'une interface dans un langage de programmation?
sobes.tech IA
Réponse de l'IA
Да, в современных версиях Java (начиная с Java 8) появилась возможность определять реализацию методов внутри интерфейса с помощью default-методов и static-методов.
- default-методы позволяют задать стандартную реализацию, которую могут использовать все классы, реализующие интерфейс, или переопределять её при необходимости.
- static-методы в интерфейсе — это методы, которые принадлежат самому интерфейсу и вызываются через имя интерфейса.
Пример:
public interface MyInterface {
void abstractMethod(); // обычный абстрактный метод
default void defaultMethod() {
System.out.println("Реализация по умолчанию");
}
static void staticMethod() {
System.out.println("Статический метод интерфейса");
}
}
Это позволяет расширять интерфейсы без нарушения существующего кода, добавляя новые методы с реализацией.