Назад к вопросам
Middle
7
Как реализовано множественное наследование в Java?
Компании, где спрашивали
Usetech
Ответ от нейросети
sobes.tech AI
В Java множественное наследование классов напрямую не поддерживается, чтобы избежать проблем с алмазной проблемой и неоднозначностями. Вместо этого используется множественное наследование через интерфейсы.
Класс может реализовывать несколько интерфейсов, каждый из которых определяет набор методов. Начиная с Java 8, интерфейсы могут содержать методы с реализацией (default методы), что позволяет частично реализовать функциональность.
Пример:
interface A {
default void method() {
System.out.println("A");
}
}
interface B {
default void method() {
System.out.println("B");
}
}
class C implements A, B {
@Override
public void method() {
// Нужно явно указать, какую реализацию использовать
A.super.method();
}
}
Таким образом, множественное наследование достигается через интерфейсы с default методами и их явное разрешение в классах.