What Is Inheritance?
Last updated
Last updated
不同类型的对象之间经常会有某些相同的地方。比如,山地自行车,公路自行车和双人自行车都具有自行车的特征(当前速度、当前踏板节奏、当前档位)。然而它们同样定义了使它们不同的附加特性:双人自行车有两个座位和两幅车把;公路自行车有赛车车把;有些山地有一个额外的连环,使得它们有更低的档位比。
面向对象编程允许类从其他类inherit
(继承)通用的状态和行为。在这个例子中,Bicycle
是MountainBike
,RoadBike
和TandemBike
的superclass
(超类)。在Java编程语言中每个类可以有一个直接超类,每个超类可能有无限数量的subclass
子类:
创建子类的语法很简单。在你类定义的前端使用extends
关键字,后面紧跟着被继承类的名字:
这让MountainBike
拥有Bicycle
一样的属性和函数,但允许其代码只关注使其独特的特性。这使得你的子类的代码更易于阅读。但是,你必须注意正确地为每个超类定义的状态和行为提供文档,因为超类代码不会出现在每个子类的源文件中。