java 支持混合继承吗?
java 8object oriented programmingprogramming
继承是两个类之间的关系,其中一个类继承了另一个类的属性。可以使用 extends 关键字将此关系定义为 −
public class A extends B{ }
继承属性的类称为子类或子类,而继承属性的类称为超类或父类。
在继承中,会在子类对象中创建超类成员的副本。因此,使用子类对象可以访问两个类的成员。
示例
class Super{ int a =100; int b = 200; public void superDemo(){ System.out.println("这是超类的方法"); } } public class Sub extends Super{ public void subDemo(){ System.out.println("这是子类的方法"); } public static void main(String args[]){ Sub obj = new Sub(); obj.superDemo(); obj.subDemo(); System.out.println(obj.a); System.out.println(obj.b); } }
输出
这是超类的方法 这是子类的方法 100 200
继承类型
一般来说,继承有以下五种类型 −
单一继承 − 在这种继承类型中,一个类继承另一个类的属性。
示例
public class A{ ........ } public class B extends A{ ........ }
多级继承 − 在这种类型的继承中,一个类继承了另一个类的属性,而后者又继承了另一个类的属性。
换句话说,当两个类处于继承中时,第三个类会继承它们之间的子类。
示例
public class A{ ........ } public class B extends A{ ........ } public class C extends B{ ........ }
层次继承 − 在这种类型的继承中,一个类被多个类继承。
换句话说,在层次继承中,我们可以有一个父类和 n 个子类。
示例
public class A{ ........ } public class B extends A{ ........ } public class C extends A{ ........ }
多重继承 − 在这种类型的继承中,一个类继承了多个类的属性。
换句话说,在多重继承中,我们可以有一个子类和 n 个父类。
示例
public class A{ ........ } public class B extends A{ ........ } public class C extends A,B{ ........ }
但是,Java 不直接支持多重继承,您需要使用接口来实现。
混合继承 − 通常,上述任何两种(或更多)继承类型的组合称为混合继承。
public class A{ ........ } public class B extends A{ ........ } public class C extends A { ........ } public class D extends B,C{ ........ }
Java 中的混合继承
由于 Java 不支持多重继承,因此在 Java 中也不可能实现混合继承。与多重继承一样,您需要使用接口来实现这一点。