原文: https://beginnersbook.com/2013/05/java-inheritance-types/

以下是 Java 中的各种类型的继承。我们将在示例和流程图的帮助下逐一看到它们中的每一个。

1)单一继承

单继承很容易理解。当一个类只扩展另一个类时,我们称之为单个继承。下面的流程图显示B类只扩展了一个A类。这里AB父类BA子类

Java 中的继承类型:单一,多重,多级和混合 - 图1

Java 中的单一继承示例程序

  1. Class A
  2. {
  3. public void methodA()
  4. {
  5. System.out.println("Base class method");
  6. }
  7. }
  8. Class B extends A
  9. {
  10. public void methodB()
  11. {
  12. System.out.println("Child class method");
  13. }
  14. public static void main(String args[])
  15. {
  16. B obj = new B();
  17. obj.methodA(); //calling super class method
  18. obj.methodB(); //calling local method
  19. }
  20. }

2)多重继承

多重继承”是指一个类扩展(或继承)多个基类的概念。我们之前学到的继承具有一个基类或父类的概念。 “多重继承”的问题是派生类必须管理对两个基类的依赖。

Java 中的继承类型:单一,多重,多级和混合 - 图2

注 1:在软件项目中很少使用多重继承。使用多重继承通常会导致层次结构中出现问题。当进一步扩展课程时,这会导致不必要的复杂性。

注 2:大多数新的 OO 语言如 Small Talk,Java,C# 不支持多重继承。 C++ 支持多重继承。

3)多级继承

多级继承是指 OO 技术中的一种机制,可以从派生类继承,从而使这个派生类成为新类的基类。正如您在下面的流程图中所见,CB的子类或子类,BA的子类。有关更多详细信息和示例,请参阅 - Java 中的多级继承

Java 中的继承类型:单一,多重,多级和混合 - 图3

Java 中的多级继承示例程序

  1. Class X
  2. {
  3. public void methodX()
  4. {
  5. System.out.println("Class X method");
  6. }
  7. }
  8. Class Y extends X
  9. {
  10. public void methodY()
  11. {
  12. System.out.println("class Y method");
  13. }
  14. }
  15. Class Z extends Y
  16. {
  17. public void methodZ()
  18. {
  19. System.out.println("class Z method");
  20. }
  21. public static void main(String args[])
  22. {
  23. Z obj = new Z();
  24. obj.methodX(); //calling grand parent class method
  25. obj.methodY(); //calling parent class method
  26. obj.methodZ(); //calling local method
  27. }
  28. }

4)分层继承

在这种类型的继承中,一个类由许多子类继承。在下面的例子B类中,CD继承相同的A类.ABCD父类(或基类)。阅读更多 - java 中的分层继承与示例程序

Java 中的继承类型:单一,多重,多级和混合 - 图4

5)混合继承

简单来说,你可以说混合继承是继承的组合。典型的流程图如下所示。可以在 java 中实现混合继承,就像多继承一样!使用接口。是的,你听到了。通过使用接口,您可以在 Java 中拥有多个以及混合继承

阅读完整的文章 - 使用示例程序在 java 中进行混合继承

Java 中的继承类型:单一,多重,多级和混合 - 图5