Возможно ли множественное наследование в Java

«Возможно ли множественное наследование в Java» — вопрос из категории Java, который задают на 26% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

В Java не поддерживается множественное наследование классов. Однако можно реализовывать несколько интерфейсов, что позволяет достичь похожего эффекта.

interface A {
    void methodA();
}

interface B {
    void methodB();
}

class C implements A, B {
    @Override
    public void methodA() { /* ... */ }

    @Override
    public void methodB() { /* ... */ }
}

Причина запрета — избежание проблемы ромбовидного наследования (когда один класс наследует одну и ту же функциональность разными путями). Интерфейсы решают это, так как не содержат реализации по умолчанию (до Java 8) или требуют явного переопределения.