- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
面向对象程序设计教程
第8章继承与派生
地空学院地信系
中国地质大学
教学目标
介绍面向对象程序设计的
基本概念:
类的继承与派生
不同继承方式下的基类成员的访问控制
添加派生类的构造和析构函数
1
学习要求
1.掌握继承和派生的概念,派生类的定义方法。
2.熟悉继承的不同方式对基类成员的访问控制
3.掌握多重继承的概念、定义方法、多重继承派
生类构造函数的执行顺序。
先执行所有基类的构造函数(顺序按照定义派生
类时指定的各基关顺序)
再执行对象成员所在类的构造函数(顺序按照它
们在类中的声明顺序)
最后执行派生类构造函数体中的内容
授课内容
8.1 继承与派生
8.2 派生类的继承方式
8.3 派生类的构造函数和析构函数
自学内容
8.4 显式访问基类成员
8.5 静态成员
8.6 类模板
调试技术
程序设计举例
2
8.1 继承和派生
派生类的定义格式为:
class 派生类名:继承方式基类名1,继承方式基类
名2 ,…,继承方式基类名n
{
派生类增加的成员声明;
};
图8.1 水果的分类
3
派生类的语法结构
class 派生类名 :访问权限 基类名
{
private:
新增私有数据成员和成员函数
protected:
新增保护数据成员和成员函效
public:
新增公有数据成员和成员函效
}
派生类中的变化
派生类对基类的扩充
派生类对基类成员的改造
系统的默认值就是私有继承(private)。
4
8.2 派生类的继承方式
私有继承private
公有继承public
保护继承protected
公有继承(public)
公有继承方式创建的派生类对基类各种成员访问
权限如下 :
基类公有成员相当于派生类的公有成员,即派生类可以
象访问自身公有成员一样访问从基类继承的公有成员。
基类保护成员相当于派生类的保护成员,即派生类可以
象访问自身的保护成员一样,访问基类的保护成员。
对于基类的私有成员,派生类内部成员无法直接访问。
派生类使用者也无法通过派生类对象直接访问。
5
实例:公有继承(public)
class Person class Employee:public Person
{ private: {char m_sDepartment[21];
char m_sPosition[21];
char m_strName[20];
文档评论(0)