继承(Inheritance)是OOP重要特性之一,它反映了一种类与类之间关系,即“is-a”的关系。通过继承所生成的类称之为“子类”或“派生类”;而被继承的类称之为“父类”或“基类”。
举例说明:狗是一种动物,类设计时,动物类作为基类,而狗类作为派生类。这样,狗类不仅具有了父类的一些属性与行为,同时也可以具有自己的属性与行为。利用继承机制,一是实现代码的复用;二是扩展代码的内容;三是多态条件之一。代码如下:
/**
*类描述:基类-动物类
*属性:颜色
*行为:吃
*/
class Animal {
public void eat() {
System.out.println("饿了,吃东西");
}
private String color;
}
/**
*类描述:派生类-狗类
*属性:体重
*行为:吃与跑
*/
public class Dog extends Animal {
public void run() {
System.out.println("一只跑的好快的狗啊!");
}
private int weight;
}
简要解说:第一,Java语言中使用关键字extends表示继承关系,并且是单一继承;第二,子类仅继承父类中的公有访问权限、受保护权限以及默认的数据成员与方法;第三,子类可以重写父类的方法,也可以拥有自己的方法。通过测试代码运行结果如下所示:
饿了,吃东西
一只跑的好快的狗啊!