多重继承

来自计算思维百科
跳转至: 导航搜索
多重继承.png

多重继承,指的是一个类可以同时继承多个父类的行为和特征功能。例如,我们看右侧的图中,有两个父类,一个是马,一个是鸟,而下面的飞马就是同时继承了马和鸟的特征,形成了一种新的类。

基本概念

在面向对象的程序设计思想中,继承描述了两种类型之间的关系,其中一种类是另外一种类的“子类”。子类继承了父类的特征,允许分享功能。例如,可以创造一个“哺乳类动物” 类,拥有进食、繁殖等的功能;然后定义一个子类“猫”,它可以从父类继承上述功能,不需重新描述进食、繁殖等功能,因为它继承了这些功能,同时增加属于自己的新功能,例如“追赶老鼠”。

多重继承的意义在于,一个类可以同时继承多个父类的特征,例如“狮虎兽类”的父类既是“老虎类”又是“狮子类”,如果缺乏多重继承往往会导致我们需要重新对“狮虎兽类”的各种特征进行描述,这就给给程序的维护带来了很大的不便。

应用案例

应用1-

案例:

生物界的多重继承:骡子的父类既是马又是驴;狮虎兽的父类既是狮子又是老虎。

生活中的多重继承:“房车类”的父类既是“房子类”又是“汽车类”,它既可以在里面居住也可以作为交通工具,如果要再单独定义一个房车类其行为与房子和汽车的行为一样,那么就会给对象的描述带来很多的不必要的麻烦,如果利用多重继承的思想,那就会变得很简单。

可以体现的计算思维

多重继承体现了计算思维的抽象特点,把对象的描述抽象为主要的一些特征和行为,并通过继承关系简化子类的描述。