文档

Java™ 教程-Java Tutorials 中文版
什么是继承?
Trail: Learning the Java Language
Lesson: Object-Oriented Programming Concepts

什么是继承?

不同种类的物体通常具有一定的共同点。例如,山地自行车,公路自行车和双人自行车都具有自行车的特征(当前速度,当前踏板节奏,当前档位)。然而每一个也定义了使它们不同的附加特征:双人自行车有两个座位和两组把手;公路自行车有 drop 把手;一些山地自行车有一个额外的链环,给他们一个较低的传动比。

面向对象编程允许从其他类 inherit (继承) 常用的状态和行为。在这个例子中,Bicycle 现在成为 MountainBikeRoadBikeTandemBikesuperclass (超类)。在 Java 编程语言中,每个类都被允许拥有一个直接的超类,每个超类都有可能拥有无限数量的 subclasses (子类)

层次结构中的类的图表。

自行车类的层次结构。

创建子类的语法很简单。在类声明的开始处,使用 extends 关键字,后面跟着要继承的类的名称:

class MountainBike extends Bicycle {

    // new fields and methods defining 
    // a mountain bike would go here

}

这给了 MountainBikeBicycle 所有相同的字段和方法,但允许其代码专注于使其独特的功能。这使得你的子类的代码易于阅读。但是,必须注意正确记录每个超类定义的状态和行为,因为该代码不会出现在每个子类的源文件中。


Previous page: What Is a Class?
Next page: What Is an Interface?