面向对象程序设计(C++语言)三ppt

面向对象程序设计(C++语言)三ppt

ID:37513547

大小:1.51 MB

页数:199页

时间:2019-05-12

面向对象程序设计(C++语言)三ppt_第1页
面向对象程序设计(C++语言)三ppt_第2页
面向对象程序设计(C++语言)三ppt_第3页
面向对象程序设计(C++语言)三ppt_第4页
面向对象程序设计(C++语言)三ppt_第5页
资源描述:

《面向对象程序设计(C++语言)三ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、李爱华程磊编著清华大学出版社同名教材 配套电子教案2010年2月面向对象程序设计(C++语言)3第二部分面向对象的程序设计第3章 类和对象(一)第4章 类和对象(二)第5章 继承和派生第6章 虚函数与多态性第7章 运算符重载第8章 模板第9章 标准模板库STL第10章C++语言的输入和输出2第5章 继承和派生本章重点:继承与派生的概念;派生类的构造函数和析构函数的执行顺序与规则;多继承的声明与实现;基类成员访问原则;赋值兼容性;虚基类的概念;35.1继承与派生的概念继承是面向对象程序设计中重要的特性。继承主要是指在己有类的或称为基类的基础上创建新类的过程,这个

2、新类就是派生类。派生类自动的包含了基类的成员,包括所有的数据和操作,而且它还可以增加自身新的成员4在C++中,一个派生类可以从一个基类派生,也可以从多个基类派生,从一个基类派生的称为单继承,如图5.1。图5.2中的树型结构图可以体现学生体系的概念。图5.1单继承图5.2类的层次树型结构图5一个派生类从两个或多个基类派生则称为多继承,如图5.3所示,它使一个类可以融合了多个类的特征,例如在现实生活中的在职研究生的概念,他是在职人员,又是研究生,如图5.4所示,从图中还可以看到一个有趣的现象,在职人员类本身是单继承的基类,教师和职员都是它的具体子类,而其又是在职研

3、究生的多重基类,提供在职人员的基本特征。图5.3多继承图5.4单继承与多继承6继承机制除了支持软件复用外,还具备以下三个作用:对事物进行分类。支持软件的增量开发。对概念进行组合。7前面的知识中,我们学习了如何定义类和如何实现类的抽象与封装,通常在不同的类中,数据成员和函数成员都是不同的,但对于某些特定的问题,有时候两个类的基本或大部分内容是相同的,在图5.2中给出了学生体系的概念,我们利用现有知识可以首先声明了一类来描述学生这一基本概念,如下:classStudent{private:intnumber;charname[20];public:Student(

4、){number=0;name[0]=’’;}VoidSetValue(intn,char*s1){number=n;Strcpy(name,s1);}voidPrint(){cout<<”Number:”<

5、oidPrint(){cout<<”Number:”<

6、udent:publicStudent{private:intage;intgrade;public:UGStudent(){SetValue(0,””);age=0;grade=0;}UGStudent(intn,char*s1,inta,intg){SetValue(n,s1);age=a;grade=g;}voidPrintExtra(){cout<<”Age:”<

7、.Print();//调用基类的函数st1.PrintExtra();//调用派生类新定义的函数return0;}12Number:100Name:wangAge:18Grade:1程序的运行结果为:13图5.5基类与派生类中的成员145.3派生类的访问属性类的成员可以分为public(公有)、protected(保护)和private(私有)三种访问权限。类的非静态成员函数可以访问类中的所有成员,但是通过类的“对象.成员”方式(在类的作用域之外),则只能访问该类的公有成员。类的继承方式有公有继承(public)、保护继承(protected)和私有继承(pr

8、ivate)三种。不同的继承方式,导致

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。