- 1、本文档共54页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
09继承和派生解读
;9.1 有关继承的基本概念
9.2 派生类
9.3 派生类的继承方式和访问属性
9.4 派生类的构造函数和析构函数;9.1派生类的概念
在自然界中,继承这个概念是非常普遍的。小猫仔继承了猫爸猫妈的特性,所以长得是猫鼻子猫眼,我们不会把它错认为是小狗。继承就是这样,会将一些本质的特性遗传给子代,使子代在很大程度上具有与父代相同的性质。当然,子代同时还具有父代没有的特性。;*;继承就是从先辈处得到属性和行为特征。类的继承,是新的类从已有的类获取已有的特征;换个说法就是从已有类产生新类的过程就是派生。类的派生实际是通过扩展、更改和特殊化,从一个已知类建立一个新类的过程。通过类的派生,可以建立具有共通关键特征的对象家族,从而实现父类代码的重用,这种继承和派生机制对于已有程序的发展和改进是极为有力的。
基类和派生类的关系:派生???是基类的具体化,基类是派生类的抽象。即基类综合了派生类的公共特征,派生类则在基类的基础上增加了某些特征,把抽象类变成具体的、实用的类型。;类的继承(inheritance)是指新类从基类那里得到基类的特征,也就是继承基类的数据和函数。
派生新类的同时也可以增加或重新定义数据和操作。
派生就是创建一个具有别的类的属性和行为的新类的能力。派生和继承的概念也来自于人们认识客观世界的过程。;;9.2 派生类;二、派生类的构成;9.3 派生类的继承方式;9.3 派生类的继承方式;实例:公有继承(public);;例9-1 演示公有继承中派生类对基类成员的访问;;;;;二、私有继承(private);三、保护继承(protected);例9-2 演示保护继承中派生类对基类成员的访问。;;;;;三种继承方式下派生类成员的访问属性列表如下:;上表说明:
无论哪一种继承方式,在派生类中不能访问基类的私有成员,私有成员只能被本类的成员函数访问;
多级派生若都采用公用继承,直到最后一级派生类都能访问基类的公用成员和保护成员;
多级派生若都采用私有继承,经过若干次派生后,基类的所有成员都变成不可访问;
多级派生若都采用保护继承,派生类外无法访问派生类中的任何成员,人们很难记住哪些成员还能访问,哪些成员不能被访问。
因此,实际应用中,通常采用公用继承方式。;9.4 派生类的构造函数和析构函数;9.4 派生类的构造函数和析构函数;派生类析构函数;例9-3 派生类构造函数和析构函数;;;;程序设计举例;// Point.cpp文件 Point类的成员函数定义;// Circle.h文件 Circle类的声明;// Circle.cpp文件 Circle类的成员函数定义;// Example9-5.cpp文件: Circle Demo;;例9-6 一个基类应有多个派生类;;;;;;;例9-7 多重继承,从多个基类派生出来的类。;// base2.h文件;// derived.h文件;// derived.cpp文件;// Example9-7.cpp文件 多重派生;;下讲预告 多态性
文档评论(0)