欢迎来到天天文库
浏览记录
ID:59485785
大小:269.50 KB
页数:57页
时间:2020-09-13
《补充C++3_继承和派生类ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、继承和派生类课程内容继承和派生的基本概念单一继承访问权限和赋值兼容规则多重继承构造函数与析构函数调用顺序两义性及其支配规则虚基类课程内容继承和派生的基本概念单一继承访问权限和赋值兼容规则多重继承构造函数与析构函数调用顺序两义性及其支配规则虚基类继承和派生的基本概念继承(inheritance):建造新的派生类。派生类从一个或多个以前定义的基类继承数据和函数,同时增加或重新定义数据和操作。这就产生了类的层次性。举例:“狗”与“黑狗”“黑狗”的一般描述:哺乳、四条腿、爱啃骨头….、黑毛。换一种描述方法:黑狗就是具有黑毛的狗。继承和派生的基本
2、概念继续上例黑狗是黑毛的狗反映了“狗”和“黑狗”这两个概念之间的内在联系在继承机制下,“黑狗”自动拥有了“狗”这一特殊群体的所有特性继承和派生的基本概念两个定义:(1)继承:派生类自动地将基类的所有成员作为自己的成员。(2)派生:通过特殊化已有的类来建立新类的过程。原有的类称为基类(父类),新建的类称为派生类(子类)。继承和派生的基本概念派生是C++语言最重要的特性之一。它是建立在客观世界中实际存在的层次性上。人派生:教师派生:学生派生:工人继承和派生的基本概念当从现存类中派生出新类时,可采用如下变化方式:(1)增加新的成员变量(成员数
3、据)(2)增加新的成员函数(3)重新定义已有成员函数(即重载)(4)改变现有成员的属性(重新给成员数据赋值)继承和派生的基本概念C++中有两种继承方式:(1)单一继承:派生类只能由一个基类例子形成一棵倒置的树(2)多重继承:派生类可以有一个或多个基类例子形成有向无环路的图单一继承例子图形开放图元封闭图元多边形圆线三角形梯形长方形椭圆圆柱体点多重继承例子父亲的性格姨母的性格母亲的性格伯父的性格……..人的性格继承和派生的基本概念基类定义了对象的一个集合,而派生类通过在基类已有特性的基础上同过增加新的成员特性限制了基类的定义,以获得基类定义
4、的对象集合的一个子集基类对象集派生类对象集继承和派生的基本概念从编码角度讲,派生类从基类中以较低的代价换来了大量的灵活性。如果基类可靠,则调试时只需测试派生类中所做的修改即可。性质约束:对父类的性质加以限制或删除。性质扩展:增加父类的性质课程内容继承和派生的基本概念单一继承访问权限和赋值兼容规则多重继承构造函数与析构函数调用顺序两义性及其支配规则虚基类单一继承一般格式:class派生类名:访问控制基类名{private:成员说明列表public:成员说明列表};单一继承例一般格式:classBlackDog:publicDog{priv
5、ate:……public:……};派生类访问控制基类举例1classLocation{private:intX,Y;public:voidsetX(intmyx){X=myx;}voidsetY(intmyy){Y=myy;}voidshowxy(){cout<<“X=”<6、){cout<<“H=“<7、派生类的函数访问)派生类要访问基类的私有成员classLocation{protected:intX,Y;public:voidsetX(intmyx){X=myx;}voidsetY(intmyy){Y=myy;}voidshowxy(){cout<<“X=”<8、t<<“X=“<
6、){cout<<“H=“<7、派生类的函数访问)派生类要访问基类的私有成员classLocation{protected:intX,Y;public:voidsetX(intmyx){X=myx;}voidsetY(intmyy){Y=myy;}voidshowxy(){cout<<“X=”<8、t<<“X=“<
7、派生类的函数访问)派生类要访问基类的私有成员classLocation{protected:intX,Y;public:voidsetX(intmyx){X=myx;}voidsetY(intmyy){Y=myy;}voidshowxy(){cout<<“X=”<8、t<<“X=“<
8、t<<“X=“<
此文档下载收益归作者所有