- 1、本文档共12页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE 1
PAGE 11
第八章 类和对象
8.1面向对象程序设计方法概述
8.1.1什么是面向对象的程序设计
1. 对象 对象的静态特征称为属性,动态特征称为行为。对象之间通过发送和接受消息互相联系。
图8.1
图8.2
在C++中,每个对象都是由数据和函数(操作代码)两部分组成。
2. 封装与信息隐蔽
3. 抽象
4. 继承与重用
5. 多态性
8.1.2面向对象程序设计的特点
图8.3
图8.3是传统的面向过程的程序设计。
面象对象的程序设计是:把数据和有关操作封装成一个对象。程序设计的任务包括两个方面:一是设计所需的各种类和对象,即决定把哪些数据和操作封装在一起;二是考虑怎样向有关对象发送消息,以完成所需的任务。
8.1.3类和对象的作用
面向过程的结构化程序设计:程序=算法+数据结构
基于对象和面向对象程序设计:对象=算法+数据结构
程序=(对象+对象+···)+消息
8.1.4面向对象的软件开发
1. 面向对象分析(object oriented analysis,OOA)
2. 面向对象设计(object oriented design,OOD)
3. 面向对象编程(object oriented programming,OOP)
4. 面向对象测试(object oriented test,OOT)
5. 面向对象维护(object oriented soft maintenance,OOSM)
8.2类的声明和对象的定义
8.2.1类和对象的关系
在C++中对象的类型称为类。类是对象的抽象,而对象是类的具体实例。
8.2.2声明类类型
struct Student
{
int num;
char name[20];
char sex;
};
class Student
{
int num;
char name[20];
char sex;
void display()
{ coutnum:numendl;
coutname:nameendl;
coutsex:sexendl;
}
};
Student stud1,stud2;
还可以改为以下声明:
class Student
{ private:
int num;
char name[20];
char sex;
public:
void display()
{ coutnum:numendl;
coutname:nameendl;
coutsex:sexendl;
}
};
Student stud1,stud2;
private和public称为成员访问限定符。被声明为私有的(private)只能被本类中的成员函数使用,类外不能使用(友元除外)。被声明为公有的(public)可以被类作用域内所有函数使用。被声明为保护的(ptotected)它不能被类外函数使用,但可以被派生类成员函数使用。
8.2.3定义对象的方法
1. 先声明类类型,然后再定义对象
2. 在声明类类型的同时定义对象
3. 不出现类名,直接定义对象
8.2.4类和结构体类型的异同
用struct声明的类,如果对其成员不作private或public声明,系统默认为public. 用class声明的类,如果对其成员不作private或public声明,系统默认为private.
8.3类的成员函数
8.3.1成员函数的性质
对外接口为公有的,类内部使用为私有的。
8.3.2在类外定义成员函数
class Student
{
public:
void display();
private:
int num;
char name[20];
char sex;
};
void Student::display()
{ coutnum:numendl;
coutname:nameendl;
coutsex:sexendl;
}
“::”是作用域限定符。
8.3.3 inline 成员函数
class Student
{
public:
void display()
{ coutnum:numendl;
coutname:nameendl;
coutsex:sexendl;
}
private:
int num;
char name[20];
char sex;
};
8.3.4成员函数的存储方式
图8.4
图8.5
#includeiostream
using namespace std;
class Time
{
public:
void set()
{ cinhourminutesec
您可能关注的文档
- 地球物理场论题库.doc
- 第八章 提供利用.ppt
- 基于MATLAB的离散信号与系统分析毕业论文.doc
- 基于单片机技术电子号码锁.doc
- 美国近十年来的发展情况.doc
- 平鲁物探技术设计简要说明.doc
- 审讯职务犯罪嫌疑人的“八要八不要.doc
- 第二章 精神分析疗法.ppt
- 监理应对不合格材料的退场记录表不合格产品退场台账.doc
- 林业经济管理课件.ppt
- GB/T 39560.10-2024电子电气产品中某些物质的测定 第10部分:气相色谱-质谱法(GC-MS)测定聚合物和电子件中的多环芳烃(PAHs).pdf
- 中国国家标准 GB/T 39560.10-2024电子电气产品中某些物质的测定 第10部分:气相色谱-质谱法(GC-MS)测定聚合物和电子件中的多环芳烃(PAHs).pdf
- 《GB/T 39560.10-2024电子电气产品中某些物质的测定 第10部分:气相色谱-质谱法(GC-MS)测定聚合物和电子件中的多环芳烃(PAHs)》.pdf
- GB/T 39560.302-2024电子电气产品中某些物质的测定 第3-2部分:燃烧-离子色谱法(C-IC)筛选聚合物和电子件中的氟、氯和溴.pdf
- 中国国家标准 GB/T 39560.2-2024电子电气产品中某些物质的测定 第2部分:拆解、拆分和机械制样.pdf
- 中国国家标准 GB/T 39560.302-2024电子电气产品中某些物质的测定 第3-2部分:燃烧-离子色谱法(C-IC)筛选聚合物和电子件中的氟、氯和溴.pdf
- GB/T 39560.2-2024电子电气产品中某些物质的测定 第2部分:拆解、拆分和机械制样.pdf
- 《GB/T 39560.2-2024电子电气产品中某些物质的测定 第2部分:拆解、拆分和机械制样》.pdf
- 《GB/T 39560.303-2024电子电气产品中某些物质的测定 第3-3部分:配有热裂解/热脱附的气相色谱-质谱法(Py/TD-GC-MS)筛选聚合物中的多溴联苯、多溴二苯醚和邻苯二甲酸酯》.pdf
- 中国国家标准 GB/T 39560.303-2024电子电气产品中某些物质的测定 第3-3部分:配有热裂解/热脱附的气相色谱-质谱法(Py/TD-GC-MS)筛选聚合物中的多溴联苯、多溴二苯醚和邻苯二甲酸酯.pdf
最近下载
- 颅内和椎管内血管性疾病(1)电子教案.ppt
- 北京市人民大附属中学2022-2023学年物理九年级第一学期期中监测模拟试题(含解析).doc
- 必威体育精装版版ISO9001&14001&45001三体系管理手册.doc
- 用户手册-和仁SMART-HIS医院信息系统软件.docx
- 《会展策划主题》-公开·课件设计.ppt
- xx银行培训:运营条线-柜面业务督导检查方法.pptx
- 《医疗机构投诉管理办法》考核试题及答案.docx
- 2015版ISO9001&ISO14001&ISO45001三体系管理手册及程序文件一整套.doc
- 建筑模型设计与制作.ppt
- 2024届中考语文第一轮专题复习——病句的辨析与修改 教学PPT课件.pptx
文档评论(0)