Встречается на собеседованиях • сегодня
Почему запрещено множественное наследование в Java
Java запрещает множественное наследование классов из-за проблемы "алмаза смерти" (Diamond Problem). Если класс наследует от двух родителей с одинаковым методом, компилятор не сможет определить, какую реализацию выбрать.
Однако Java поддерживает множественное наследование через интерфейсы (с Java 8 и 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(); } // Явное указание реализации
}
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы