Встречается на собеседованиях • сегодня
Возможно ли множественное наследование в Java
В Java нет множественного наследования классов из-за проблемы "алмаза смерти" (diamond problem). Однако можно реализовать несколько интерфейсов, которые поддерживают множественное наследование поведения через default-методы.
Пример:
java
interface A {
default void foo() {
System.out.println("A");
}
}
interface B {
default void foo() {
System.out.println("B");
}
}
class C implements A, B {
// Обязаны переопределить конфликтующий метод
@Override
public void foo() {
A.super.foo(); // Явный вызов реализации из A
}
}Класс может наследовать только один родительский класс, но сколько угодно интерфейсов. Для разрешения конфликтов между default-методами нужно явно переопределять метод в классе.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы