- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Visual C++与面向对象程序设计教程 第 7章 类和对象 计算机教学实验中心 西安交通大学 教学目标 介绍面向对象程序设计方法的基本原理及主要特点——抽象、封装、继承和多态。 讲解类和对象的概念以及如何利用类来解决具体问题。 类( I )———has关系 学习要求 掌握面向对象的程序设计思想 掌握类的定义。 掌握对象的声明和引用。 掌握具有不同访问属性的成员的访问方式 观察构造函数和析构函数的执行过程。 授课内容 7.1 面向对象的思想 7.2 面向对象程序设计的特点 7.3 类与对象 7.4 构造函数与析构函数 7.5 数据成员的初始化 7.6 对象与指针 调试技术 程序设计举例 7.1 面向对象的思想 面向过程的程序设计(Structure Programming) 以功能为中心,采用函数来描述(动词) 面向对象程序设计(OOP) 面向对象程序设计方法认为,客观世界是由各种各样的实体组成的,这些实体就是面向对象方法中的对象。 消息是向某对象请求服务的一种表达方式 对象之间的交互通过发送消息来实现。 消息包括:目标对象 ,请求的方法 ,参数 7.2 面向对象程序设计的特点 四个基本特征: 抽象(类)(数据抽象+代码抽象 ) 封装(过程和数据封藏起来) 继承(基类和派生类) 多态性(虚函数、函数重载) OOP的优点 开发时间短,效率高,可靠性高,所开发的程序更强壮 重用,共享,可维护性,精简 适合于大程序长时间的开发工作 7.3 类与对象 类的声明 类的定义 成员函数的定义 数据成员的定义 对象的引用 对象作函数的参数 对象作函数的返回值 01.为什么要引入类 工资单:姓名、单位、编号..... 成绩单:姓名、学号、各科成绩..... 简单数据单元无法将这样记录作为一个数据单位处理 一一对应关系 02. 以工资单为例 03. 类的层次关系 工作部门:字符串 姓名:字符串 职务:代码(0~99)int 工作时间: 年(xxxx): int 月(1~12): char 日(1~31): char 家庭情况 婚否:(0,1) int 是否是双职工:int 类(Class)----数据类型 类是具有相同属性和相同的方法的对象的集合,它是一种既包含数据又包含函数的抽象数据类型。 类是将一类对象和其他对象区别开来的一组描述。 类是对象集合的抽象,对象是类的一个实例。 类的种类 用struct关键字声明的类 用union关键字声明的类 用class关键字声明的类 类的定义 1.数据成员(Data Member),即类的属性; 2.成员函数(Member Function),即类的方法; 3.构造函数(constructor)和析构函数(destructor),这将在7.4节介绍; 4.运算符函数,在第9章介绍。 对象(Object)----数据 对象是包含现实世界物体特征的抽象实体,反映了系统为之保存信息和(或)与之交互的能力。 对象=数据+作用于这些数据上的操作 =属性(Attribute)+方法(Method) 消息(Message) ----函数调用 消息是向某对象请求服务的一种表达方式。 对象之间通过传递消息来实现相互的通信。 1. 类的定义 class 类名 { private: //私有成员 数据成员或成员函数表; public: //公有成员 数据成员或成员函数表; protected: //保护成员 数据成员或成员函数表; … … }; 分析:编写简单的人事系统(子程序) 人 分析:编写简单的人事系统(主程序) 实例: 张三 李四 王五 例7-1 定义一个Person类,用来说明人员类对象 // Example 7-1:定义Person类 class Person {private: char m_strName[20]; int m_nAge; int m_nSex; public: void Register(char *name, int age, char sex); char * GetName(); int GetAge(); char GetSex(); void ShowMe(); }; 2. 成员函数的定义 成员函数的一般形式: 类型 类名 :: 函数名 (参数表) { 函数体 } 例7-2 编写Person类成员函数的定义。 // Example 7-2:Person类成员函数的定义 void Person:: Register(char *name, int ag
文档评论(0)