Множественное наследование в Java — пример через интерфейсы
Когда дочерний класс наследуется сразу от нескольких суперклассов, это называют множественным наследованием. Однако в Java множественное наследование от классов не поддерживается.
Чтобы реализовать множественное наследование в Java, нужно использовать интерфейсы.
Пример: множественное наследование в Java
interface Backend {
// abstract class
public void connectServer();
}
class Frontend {
public void responsive(String str) {
System.out.println(str + " can also be used as frontend.");
}
}
// Language extends Frontend class
// Language implements Backend interface
class Language extends Frontend implements Backend {
String language = "Java";
// implement method of interface
public void connectServer() {
System.out.println(language + " can be used as backend language.");
}
public static void main(String[] args) {
// create object of Language class
Language java = new Language();
java.connectServer();
// call the inherited method of Frontend class
java.responsive(java.language);
}
}
Вывод:
Java can be used as backend language.
Java can also be used as frontend.
В этом примере мы создали интерфейс Backend и класс Frontend. Класс Language расширяет класс Frontend и реализует интерфейс Backend.
Примечание
Здесь класс Language наследует свойства и от Backend, и от Frontend. Поэтому его можно считать примером множественного наследования.