Java 多层 继承
在面向对象编程的世界中,继承是一个核心概念,它允许我们基于已有的类创建新类,从而实现代码的重用和层次化设计。Java支持多层继承(也称为"多级继承"),这是一种继承关系的延伸形式,本文将详细介绍这一概念。
什么是多层继承?
多层继承是指一个类继承自另一个类,然后这个子类又被其他类继承,形成一个继承链或继承树。在这种结构中,每个子类都会继承其所有父类的特性。
在上图中,类C继承自类B,类B又继承自类A,这就形成了一个多层继承结构。类C不仅可以访问类B的非私有成员,还能间接访问类A的非私有成员。
多层继承的语法
Java中实现多层继承的语法非常简单,只需要使用关键字extends
:
// 祖父类
class Animal {
void eat() {
System.out.println("动物需要吃东西");
}
}
// 父类继承祖父类
class Mammal extends Animal {
void breathe() {
System.out.println("哺乳动物需要呼吸氧气");
}
}
// 子类继承父类
class Dog extends Mammal {
void bark() {
System.out.println("狗会汪汪叫");
}
}
// 测试多层继承
public class MultilevelInheritanceDemo {
public static void main(String[] args) {
Dog dog = new Dog();
dog.eat(); // 调用祖父类方法
dog.breathe(); // 调用父类方法
dog.bark(); // 调用自身方法
}
}
输出结果:
动物需要吃东西
哺乳动物需要呼吸氧气
狗会汪汪叫
在这个例子中,Dog
类继承了Mammal
类,而Mammal
类又继承了Animal
类。因此,Dog
类的实例可以调用所有三个类中的方法。