- 5
- 0
- 约2.05万字
- 约 47页
- 2018-04-03 发布于江西
- 举报
c 程序设计--对象分册(第2章).ppt
第2章 继承与派生 本章学习重点掌握内容: ? 继承的概念 ? 派生类的建立及继承的方式 ? 各种继承方式下基类成员的访问机制 ? 派生类的构造函数和析构函数 ? 多重继承 ? 虚基类 第2章 继承与派生 2.1 继承与派生的基础知识 2.2 类的继承方式 2.3 派生类的构造函数与析构函数 2.4 基类与派生类的转换 2.5 多重继承 2.6 虚基类 2.7 综合应用实例 2.1 继承与派生的基础知识 2.1.1 继承与派生的基本概念 现实世界中,许多事物之间的并不是孤立存在的,它们存在共同的特性,有细微的差别,可以使用层次结构描述它们之间的关系。例如交通工具的层次结构如图2.1所示: 2.1.1 继承与派生的基本概念 C++通过类派生(Class Derivation)的机制支持继承(Inheritance)。允许程序员在保持原有类特性的基础上进行扩展,增加功能,派生出新类。继承是面向对象程序设计中的代码复用的最重要的手段之一。被继承的类称为基类(Base Class)、父类或超类(Superclass),而新产生的类称为派生类(Derived Class)或子类(Subclass)。基类和派生类的集合称作类继承层次结构(Hierarchy),继承呈现了面向对象程序设计的层次结构。 2.1.1 继承与派生的基本概念 一个新类从已有的类获得其已有的特性称为继承。通过继承,新类获得了父类的所有数据成员和成员函数,并可以添加自己的数据成员和成员函数。一个基类可以派生出很多的子类,一个子类也可以作为另一个新类的基类,因此基类和子类是相对而言的。继承的方式有以下2种:单一继承和多重继承。 2.1.1 继承与派生的基本概念 单一继承和多重继承 2.1.2 派生类的定义 定义派生类的一般格式为: class 派生类名:继承方式 基类名 { private: 成员表1; //派生类增加或重写的私有成员 protected: 成员表2; //派生类增加或重写的保护成员 public: 成员表3; //派生类增加或重写的公有成员 }; 2.1.2 派生类的定义 其中:基类名是已声明的类,派生类名是新生成的类名; ? 继承方式规定了如何访问从基类继承的成员。继承的方式包括:私有继承(private)、保护继承(protected)、 公有继承(public)。不同的继承方式下,派生类继承的父类成员的访问权限是不同的。继承方式可以省略不写,默认的继承方式为私有继承(private); ? 派生类的定义中包括子类新增加的成员和继承父类需要重写的成员。新添加的成员是派生类对基类的发展,说明派生类新的属性和方法;派生类继承了父类的数据成员和成员函数,有时继承来的成员函数需要改进,以满足新类的实际需要。C++允许在派生类中重新声明和定义这些成员函数,使这些函数具有新的功能,称之为重写或覆盖。重写函数起屏蔽、更新作用,取代基类成员,完成新功能。 2.1.2 派生类的定义 【例2.1】已知盒子CBox类,用继承与非继承两种不同的方法定义彩色盒子CColorbox类。 分析:盒子类(Cbox)具有长、宽和高,成员函数SetLength()、 SetWidth()和SetHeight()分别设置盒子的长、宽和高,成员函数Volume()计算盒子的体积。彩色盒子除具有以上特性外,还有一个数据成员color表示盒子的颜色,相应的成员函数SetColor()用于设置彩色盒子的颜色。 2.1.2 派生类的定义 非继承的方式,分别定义CBox类和CColorbox类 盒子类的定义:代码见备注 彩色盒子类的定义:代码见备注 2.1.2 派生类的定义 使用派生类定义: class CColorbox : public CBox //公有继承 { //新增的私有数据成员 public: void SetColor(int c) //新增的成员函数 { color=c; } private: int color; }; 利用继承机制产生类比第一种简单多了,但功能一样。派生类CColorbox公有继承Cbox类,它包括基类CBox类的全部数据成员(length,width,height)和成员函数(SetWidth 、SetHeigh和SetWidth),但访问权限发生了变化。并且添加自己的新成员——数据成员color和成员函数SetColor()。 2.1.3 派生类的生成 仔细分析派生新类这个过程,实际
您可能关注的文档
- 9.3平等尊重你我他讲述.ppt
- 中国平安-驳运责任险简介.ppt
- 课题2 化学是一门以实验为基础的科学》课件2 新人教版概要.ppt
- 【精品课件】语文《游褒禅山记》.ppt
- 大气排版欧美画册风动画产品宣传企业ppt模板.pptx
- 供应链管理原理及应用第八章 供应链与物流管理.ppt
- 梁梅:雅姿个人整体造型课堂-中华讲师网.ppt
- 企业选择和实施供应链管理的战略决策过程分析课件.ppt
- 平面广告设计之印刷设计教程【共124页-原创】.ppt
- ISO9001:2000标准运用与实施.ppt
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
最近下载
- 【花生十三】25公务员考试资料分析速算练习册及速算过程.pdf VIP
- mst2016说明书.pdf VIP
- 口腔科课件洁治.pptx
- 2025兴安盟公安局招聘165名留置看护警务辅助人员备考试题及答案解析.docx VIP
- 35KV变电站毕业设计(完整版).doc VIP
- AP微观经济学 2012年真题 (选择题+问答题) AP Microeconomics 2012 Released Exam and Answers (MCQ+FRQ).pdf VIP
- 上海师范大学天华学院公共课《大学计算机基础》期末试卷A(有答案).docx VIP
- 高中生对AI 技术应用的态度与认知调查问卷.docx VIP
- 2025年度”五个方面“专题组织生活会个人对照检查发言材料.docx VIP
- 南方医科大学各专业实习大纲汇编.pdf VIP
原创力文档

文档评论(0)