收藏 分享(赏)

第五章 继承与派生.ppt

上传人:j35w19 文档编号:8227317 上传时间:2019-06-15 格式:PPT 页数:195 大小:2.91MB
下载 相关 举报
第五章 继承与派生.ppt_第1页
第1页 / 共195页
第五章 继承与派生.ppt_第2页
第2页 / 共195页
第五章 继承与派生.ppt_第3页
第3页 / 共195页
第五章 继承与派生.ppt_第4页
第4页 / 共195页
第五章 继承与派生.ppt_第5页
第5页 / 共195页
点击查看更多>>
资源描述

1、第五章 继承与派生 面向对象程序设计有四个主要特点:抽象、封装、继承和多态性。这章主要学习有关继承的知识,在第六章学习多态性。 5.1 继承与派生的概念 5.2派生类的声明方式 5.3派生类的构成 5.4派生类成员的访问属性 类型兼容规则 5.5派生类的构造函数和析构函数 5.6多重继承 5.1 继承与派生的概念 C+的继承机制实现软件可重用。有时两个类的内容基本相同或有一部分相同。例如已声明了类 student: class Student private : int num; string name; char sex; public: void display( ) coutnumnam

2、esex; void display( ) coutageaddr; void display_1() /cout #include using namecpace std; int main() Rectangle rect; rect.InitR(2,3,20,10); /通过派生类对象访问基类公有成员 rect.Move(3,2); coutrect.GetX(), rect.GetY(), rect.GetH(), rect.GetW()endl; return 0; 24 5.4.2 私有继承 在派生类中,基类的公有成员和保护成员作为派生类的私有成员,派生类的成员可以直接访问它们,而

3、派生类的成员无法直接访问基类的私有成员。 在派生类的外部,派生类的对象无法访问基类的全部成员。 私有继承之后,全部基类成员在派生类中都成为了私有成员或不可访问的成员,无法进一步派生。 私有继承方式一般很少使用。 图 5.7 例 5.2 将例 5.1中公有继承改为私有继承方式。 class Student1: private Student private: int age; string addr; public: void display_1() display(); cout“age: “ageendl; / 正确 cout“address: “addrendl; / 正确 ; int m

4、ain() Student1 stud1; stud1.display_1(); return 0; 例子中采用的方法是: 在 main函数中调用派生类的公有成员函数stud1.display_1 通过该函数调用基类的公有成员函数 diplay 通过基类的公有成员函数 display访问基类的私有数据成员。 5.4.3 保护成员和保护继承 当派生类的继承方式为 protected继承属性时,在派生类中,基类的公有成员和保护成员均作为派生类的保护成员,派生类的成员可以直接访问它们,而派生类的成员无法访问基类的私有成员。 在派生类的外部,派生类的对象无法访问基类的全部成员。 如果基类只进行了一次派生,则保护继承和私有继承的功能完全相同,但 保护继承可以进一步派生,而私有继承则不可以,两者具有实质性差别。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报