广东金融学院:《C++语言程序设计》课程教学资源(PPT课件)第四章 类与对象

木为 C++语言程序设计 第四章类与对玖 广东金融学院 计算机科学与技术系软件教研室
1 第四章 类与对象 C++语言程序设计 广东金融学院 计算机科学与技术系 软件教研室

C++语言程序设计 清华大学郑莉 本拿主要内容 面向对象的思想 ·析构函数 OOP的基本特点 。内联成员函数 。类概念和声明 ·拷贝构造函数 。对象 ● 类的组合 ●构造函数
C++语言程序设计 清华大学 郑莉 2 本章主要内容 ⚫ 面向对象的思想 ⚫ OOP的基本特点 ⚫ 类概念和声明 ⚫ 对象 ⚫ 构造函数 ⚫ 析构函数 ⚫ 内联成员函数 ⚫ 拷贝构造函数 ⚫ 类的组合

C++语言程序设计 清华大学郑莉 回顾:面向过程的设计方法 面 向 重点: 一如何实现细节过程,将数据与函数分开。 象 。形式: 的 -主模块+若千个子模块(main0+子函数)。 ●特点: -自顶向下,逐步求精一功能分解。 缺点: 一效率低,程序的可重用性差。 3
C++语言程序设计 清华大学 郑莉 3 回顾:面向过程的设计方法 ⚫ 重点: – 如何实现细节过程,将数据与函数分开。 ⚫ 形式: – 主模块+若干个子模块(main()+子函数)。 ⚫ 特点: – 自顶向下,逐步求精——功能分解。 ⚫ 缺点: – 效率低,程序的可重用性差。 面 向 对 象 的 思 想

C++语言程序设计 清华大学郑莉 面向对象的方法 目的: 向对象的思想 -实现软件设计的产业化。 观点: -自然界是由实体(对象)所组成。 ● 程序设计方法: 使用面向对象的观点来描述模仿并处理 现实问题。 要求: 一高度概括、分类、和抽象
C++语言程序设计 清华大学 郑莉 4 面向对象的方法 ⚫ 目的: – 实现软件设计的产业化。 ⚫ 观点: – 自然界是由实体(对象)所组成。 ⚫ 程序设计方法: – 使用面向对象的观点来描述模仿并处理 现实问题。 ⚫ 要求: – 高度概括、分类、和抽象。 面 向 对 象 的 思 想

C++语言程序设计 清华大学郑莉 抽家象 抽象是对具体对象(问题)进行概括, OOP的基本特点 抽出这一类对象的公共性质并加以描述 的过程。 先注意问题的本质及描述,其次是实现过 程或细节。 数据抽象:描述某类对象的属性或状态 (对象相互区别的物理量)。 代码抽象:描述某类对象的共有的行为特 征或具有的功能。 抽象的实现:通过类的声明。 5
C++语言程序设计 清华大学 郑莉 5 抽象 抽象是对具体对象(问题)进行概括, 抽出这一类对象的公共性质并加以描述 的过程。 – 先注意问题的本质及描述,其次是实现过 程或细节。 – 数据抽象:描述某类对象的属性或状态 (对象相互区别的物理量)。 – 代码抽象:描述某类对象的共有的行为特 征或具有的功能。 – 抽象的实现:通过类的声明。 OOP 的 基 本 特 点

C++语言程序设计 清华大学郑莉 抽象实例 钟表 数据抽象: O0P的基本特点 int Hour,int Minute,int Second 代码抽象: SetTime(),ShowTime() 贵米
C++语言程序设计 清华大学 郑莉 6 抽象实例——钟表 ⚫ 数据抽象: int Hour, int Minute, int Second ⚫ 代码抽象: SetTime(), ShowTime() OOP 的 基 本 特 点

C++语言程序设计 清华大学郑莉 抽象实例一 钟表类 class Clock O0的基本特点 { public: void SetTime(int NewH,int NewM, int NewS); void ShowTime(); private: int Hour,Minute,Second; } 7
C++语言程序设计 清华大学 郑莉 7 抽象实例——钟表类 class Clock { public: void SetTime(int NewH, int NewM, int NewS); void ShowTime(); private: int Hour,Minute,Second; }; OOP 的 基 本 特 点

C++语言程序设计 清华大学郑莉 抽象实例一人 OOP 数据抽象: 的 char *name,char *gender,int age,int id ●代码抽象: 本 生物属性角度: 点 GetCloth(), Eat(),Step(),. 社会属性角度: Work(),Promote() 米
C++语言程序设计 清华大学 郑莉 8 抽象实例——人 ⚫数据抽象: char *name,char *gender,int age,int id ⚫代码抽象: 生物属性角度: GetCloth(), Eat(), Step(),. 社会属性角度: Work(), Promote() ,. OOP 的 基 本 特 点

C++语言程序设计 清华大学郑莉 封装 OOP的基本特点 将抽象出的数据成员、代码成员相结 合,将它们视为一个整体。 目的是曾强安全性和简化编程,使用者 不必了解具体的实现细节,而只需要通 过外部接口,以特定的访问权限,来使 用类的成员。 实现封装:类声明中的} 9
C++语言程序设计 清华大学 郑莉 9 封装 将抽象出的数据成员、代码成员相结 合,将它们视为一个整体。 – 目的是曾强安全性和简化编程,使用者 不必了解具体的实现细节,而只需要通 过外部接口,以特定的访问权限,来使 用类的成员。 – 实现封装:类声明中的{} OOP 的 基 本 特 点

C++语言程序设计 清华大学郑莉 封装 实例: O0P的基本特点 class Clock 外部接口 public:void SetTime(int NewH,int NewM, int NewS); void ShowTime(); private:int Hour,Minute,Second; 特定的访问权限 边界 10
C++语言程序设计 清华大学 郑莉 10 封装 ⚫ 实例: class Clock { public: void SetTime(int NewH,int NewM, int NewS); void ShowTime(); private: int Hour,Minute,Second; }; 边界 特定的访问权限 OOP 的 基 本 特 点 外部接口
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 广东金融学院:《C++语言程序设计》课程教学资源(PPT课件)第六章 数组、指针与字符串.ppt
- 广东金融学院:《C++语言程序设计》课程教学资源(PPT课件)第八章 多态性.ppt
- 广东金融学院:《C++语言程序设计》课程教学资源(PPT课件)第五章 C++程序的结构.ppt
- 广东金融学院:《C++语言程序设计》课程教学资源(PPT课件)第二章 C++简单程序设计.ppt
- 广东金融学院:《C++语言程序设计》课程教学资源(PPT课件)第九章 群体类和群体数据的组织.ppt
- 广东金融学院:《C++语言程序设计》课程教学资源(PPT课件)第三章 函数.ppt
- 广东金融学院:《C++语言程序设计》课程教学资源(PPT课件)第七章 继承与派生.ppt
- 广东金融学院:《C++语言程序设计》课程教学资源(PPT课件)第一章 绪论.ppt
- 清华大学出版社:《Visual.C++面向对象与可视化程序设计》书籍教材PDF电子版(第2版,编著:黄维通).pdf
- 中国水利水电出版社:《C++实用培训教程》书籍PDF电子版(共十章,编著:李国权).pdf
- 《C++语言程序设计》课程参考文献:《面向对象的C++》书籍PDF电子版.pdf
- 《C++语言程序设计》课程教学资源(学习资料)Visual C++MFC简明教程.doc
- 齐齐哈尔大学:《C++语言程序设计》课程授课教案(讲义).pdf
- 齐齐哈尔大学:《C++语言程序设计》课程教学大纲 C++ Programming.pdf
- GoldWave教程.doc
- 《多媒体技术》课程教学大纲 Multimedia Technique.docx
- 十一五国家级规划教材:《Visual Basic程序设计教程》教学资源(PPT课件,第4版)第13章 Visual Basic多媒体程序设计.ppt
- 十一五国家级规划教材:《Visual Basic程序设计教程》教学资源(PPT课件,第4版)第12章 Visual Basic高级界面设计.ppt
- 十一五国家级规划教材:《Visual Basic程序设计教程》教学资源(PPT课件,第4版)第11章 数据库技术.ppt
- 十一五国家级规划教材:《Visual Basic程序设计教程》教学资源(PPT课件,第4版)第10章 文件.ppt
- 广东金融学院:《C++语言程序设计》课程教学资源(PPT课件)第十章 C++标准模板库.ppt
- 广东金融学院:《C++语言程序设计》课程教学资源(PPT课件)第十一章 流类库与输入输出.ppt
- 广东金融学院:《C++语言程序设计》课程教学资源(PPT课件)第十二章 异常处理.ppt
- 齐齐哈尔大学:《C++语言程序设计》课程教学课件(PPT讲稿)第1章 C++程序设计概述.pptx
- 《C++语言程序设计》课程教学资源(学习指导)第1章 C++语言概述.pdf
- 齐齐哈尔大学:《C++语言程序设计》课程教学课件(PPT讲稿)第2章 数据类型运算符表达式 2.1 数据类型、常量、变量.ppt
- 《C++语言程序设计》课程教学资源(学习指导)第2章 数据类型运算符表达式 2.1 数据类型、常量、变量.pdf
- 齐齐哈尔大学:《C++语言程序设计》课程教学课件(PPT讲稿)第2章 数据类型运算符表达式 2.2 算术、关系、逻辑运算符.ppt
- 《C++语言程序设计》课程教学资源(学习指导)第2章 数据类型运算符表达式 2.2 算术、关系、逻辑运算符.pdf
- 齐齐哈尔大学:《C++语言程序设计》课程教学课件(PPT讲稿)第2章 数据类型运算符表达式 2.3 其他运算符.ppt
- 《C++语言程序设计》课程教学资源(学习指导)第2章 数据类型运算符表达式 2.3 其他运算符与表达式.pdf
- 齐齐哈尔大学:《C++语言程序设计》课程教学课件(PPT讲稿)第3章 控制流程 3.1 顺序结构.ppt
- 齐齐哈尔大学:《C++语言程序设计》课程教学课件(PPT讲稿)第3章 控制流程 3.2 分支结构.ppt
- 齐齐哈尔大学:《C语言程序设计》课程授课教案(64学时).pdf
- 齐齐哈尔大学:《C语言程序设计》课程教学大纲 The C Programming Language(物理学).pdf
- 齐齐哈尔大学:《C语言程序设计》课程教学大纲 The C Programming Language(教育技术).pdf
- 齐齐哈尔大学:《C语言程序设计》课程教学大纲 The C Programming Language(土木工程).pdf
- 齐齐哈尔大学:《C语言程序设计》课程教学大纲 The C Programming Language(数学与应用).pdf
- 齐齐哈尔大学:《C语言程序设计》课程教学大纲 The C Programming Language(电气工程及其自动化).pdf
- 齐齐哈尔大学:《C语言程序设计》课程教学大纲 The C Programming Language(电子信息工程).pdf