下面是Java中的各种类型的继承。我们将在示例和流程图的帮助下逐一看到它们中的每一个。
1)单一继承
单继承很容易理解。当一个类只扩展另一个类时,我们称之为单个继承。
下面的流程图显示B类只扩展了一个A类。这里A是B 的父类,B 是A 的子类。
Class A
{
public void methodA()
{
System.out.println("Base class method");
}
}
Class B extends A
{
public void methodB()
{
System.out.println("Child class method");
}
public static void main(String args[])
{
B obj = new B();
obj.methodA(); //calling super class method
obj.methodB(); //calling local method
}
}
2)多重继承
“ 多重继承 ”是指一个类扩展(或继承)多个基类的概念。
我们之前学到的继承具有一个基类或父类的概念。
“多重继承”的问题是派生类必须管理对两个基类的依赖。
注1:多重继承在软件项目中很少使用。使用多重继承通常会导致层次结构中出现问题。当进一步扩展课程时,这会导致不必要的复杂性。
注2:大多数新的OO语言,如Small Talk,Java,C#都不支持多重继承。C++支持多重继承。
3)多级继承
多级继承是指OO技术中的一种机制,其中可以从派生类继承,从而使该派生类成为新类的基类。
正如您在下面的流程图中看到的,C是B的子类或子类,B是A的子类。
Java中的多级继承
Class X
{
public void methodX()
{
System.out.println("Class X method");
}
}
Class Y extends X
{
public void methodY()
{
System.out.println("class Y method");
}
}
Class Z extends Y
{
public void methodZ()
{
System.out.println("class Z method");
}
public static void main(String args[])
{
Z obj = new Z();
obj.methodX(); //calling grand parent class method
obj.methodY(); //calling parent class method
obj.methodZ(); //calling local method
}
}
4)分层继承
在这种类型的继承中,一个类由许多子类继承。
在下面的示例类B中,C和D 继承了相同的类A。
A是B,C和D 的父类(或基类)。
5)混合继承
简单来说,您可以说Hybrid继承是Single和Multiple 继承的组合。
典型的流程图如下所示。可以在java中实现混合继承,就像多继承一样!
使用接口。是的,就是接口。通过使用接口,您可以在Java中具有多个以及混合继承。
原文地址:
https://beginnersbook.com/2013/05/java-inheritance-types/