首页 理论教育信息系统开发方法与实践教程:继承及其分类

信息系统开发方法与实践教程:继承及其分类

【摘要】:继承是指子类可以自动拥有父类的全部属性和操作。另外如图7-2所示,表示出了几种类之间的继承关系,位于上层的类是下层类的直接或间接父类,最下层是几种类实例化成的对象。图7-1 继承的描述图7-2 继承的例子继承性又分为单重继承和多重继承两类。单重继承时一个子类只能有一个父类,多重继承时一个子类可以有多于一个的父类。单重继承构成的类之间关系是一棵树,多重继承构成的类之间的关系是一个图。继承具有传递性。

继承是指子类可以自动拥有父类的全部属性和操作。这种将已存在的定义作为基础,建立新定义的技术,使得父类和子类之间能够共享数据和方法。

在对现实世界建模时,可以根据事物的共性抽象出一批基类。在基类的基础上事物可以根据个性添加自己的属性和操作,抽象出新的对象类。这些新类既有基类的全部属性与操作,又有自己的属性与操作,被称为基类的子类或派生类,基类称为父类或超类。这种产生子类的方法就叫继承。对于继承的形象描述如图7-1所示。

图7-1表示了父类和子类之间的继承关系。箭头从子类指向父类,子类由继承部分和个性部分组成,继承部分是子类从父类继承的属性与操作,个性部分是子类自己特有的属性与操作。

另外如图7-2所示,表示出了几种类之间的继承关系,位于上层的类是下层类的直接或间接父类,最下层是几种类实例化成的对象。

978-7-111-47279-7-Chapter07-3.jpg

图7-1 继承的描述(www.chuimin.cn)

978-7-111-47279-7-Chapter07-4.jpg

图7-2 继承的例子

继承性又分为单重继承和多重继承两类。单重继承时一个子类只能有一个父类,多重继承时一个子类可以有多于一个的父类。单重继承构成的类之间关系是一棵树,多重继承构成的类之间的关系是一个图。

继承具有传递性。例如,E继承B,而B继承A。由于继承的传递性,E也继承了A,所以E也是A的子类,称为A的间接子类。它不仅继承了类B的全部属性和操作,也继承了类A的全部属性与操作。因此,一个子类除了具有自己的全部特性外,还具有该类上层全部基类的一切特性。

继承简化了对现实世界的描述,定义子类时不必重复定义那些在父类中已经定义过的属性和操作,而只需专注于定义自己特有的属性与操作。有了继承机制,软件的重用性可得到提高。