java面向对象编程--什么是继承
不同种类的物体之间往往有一定的共同点。例如,山地自行车、公路自行车和双人自行车都具有自行车的特点(当前的速度、当前的踏板节奏、当前的档位)。然而,每一款自行车都有不同的附加功能:双人自行车有两个座位和两组车把;公路自行车有下垂的车把;一些山地自行车有一个额外的链环,使他们的齿轮传动比较低。
面向对象编程允许类从其他类继承常用的状态和行为。在这个例子中,Bicycle现在变成了山地车、公路自行车和TandemBike的超类。在Java编程语言中,每个类都允许有一个直接的超类,每个超类都有可能有无限数量的子类:
创建子类的语法很简单。在类声明的开始,使用extends关键字,后跟要继承的类的名称:
class MountainBike extends Bicycle { // new fields and methods defining // a mountain bike would go here }
这使得MountainBike具有与Bicycle相同的所有字段和方法,但允许其代码专门关注使其惟一的特性。这使得子类的代码易于阅读。但是,您必须注意正确地记录每个超类定义的状态和行为,因为这些代码不会出现在每个子类的源文件中。