第9章 继承

本章重点通过对比的方法讲述继承的概念。在面向对象的程序设计中,继承是一个不可分割的重要组成部分,没有使用继承的类的程序设计,就不能称为面向对象的程序设计。继承的重要性和特殊性可以通过本章的学习中得以领会。

本章重点:

类的继承。

什么是构造器。

类之间的关系。

类的层次。

9.1 什么是继承

继承和现实生活中的“继承”有相似之处,都是保留一些父级的特性。本节将通过对比两个不同领域中相同的词语,来真正地理解继承这个概念。

9.1.1 继承的引出

看到“继承”这个词,会想起一句俗语:子承父业。所谓“子承父业”,就是晚辈继承父辈的事业及财产,这就是现实生活中所说的继承权。而在Java语言中,也有继承,其意义跟现实生活中的继承十分相似。下面来分析这个概念。

在现实生活中,继承应该具备两个必要的条件:一是必须要有父辈,如果没有父辈,那继承谁呢?二是必须要有子辈,如果没有子辈,那么由谁来继承呢?同样的道理,在Java语言中,继承是针对类来说的。既然生活中的继承要有父辈和子辈,那么Java中也得有父类和子类。继承的原理如图9.1所示。

第9章 继承 - 图1

图 9.1 生活中和程序中的继承