[计算机软件及应用]4章 类和对象.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[计算机软件及应用]4章 类和对象

第4章 类和对象 4.0 面向对象程序设计的基本特点 4.1 类和对象 4.2 构造函数和析构函数 4.3 类的组合 4.4 UML图形标识 4.5 小结 4.0 面向对象程序设计的基本特点 抽象: 抽象是对具体对象(问题)进行概括,抽出这一类对象的公共性质并加以描述的过程。 先注意问题的本质及描述,其次是实现过程或细节。 数据抽象:描述某类对象的属性或状态(对象相互区别的物理量)。 代码抽象:描述某类对象的共有的行为特征或具有的功能。 抽象的实现:通过类的声明。 抽象实例——钟表 数据抽象: int Hour,int Minute,int Second 代码抽象: SetTime(),ShowTime() 抽象实例——钟表类 class Clock { public: void SetTime(int NewH,int NewM,int NewS); void ShowTime(); private: int Hour,Minute,Second; }; 抽象实例——人 数据抽象: char *name,char *sex,int age,int id 代码抽象: 生物属性角度: GetCloth(), Eat(), Step(),… 社会属性角度: Work(), Promote() ,… 封装 将抽象出的数据成员、代码成员相结合,将它们视为一个整体。 目的是增强安全性和简化编程,使用者不必了解具体的实现细节,而只需要通过外部接口,以特定的访问权限,来使用类的成员。 实现封装:类声明中的{} 继承与派生 是C++中支持层次分类的一种机制,允许程序员在保持原有类特性的基础上,进行更具体的说明。 多态性 多态:同一名称,不同的功能实现方式。 目的:达到行为标识统一,减少程序中标识符的个数。 一个简单的日期类 4.1 类和对象 4.1.1 什么是类 4.1.2 类的定义格式 1、类定义格式的构成 说明部分:说明类中的成员,包含数据成员和成员函数的声明; 实现部分:成员函数的实现; 2、类的一般定义格式 4.1.2 类的定义格式(续1) class TDate //日期类的定义 { public: void SetDate(int y,int m,int d); int IsLeapYear(); void PrintDate(); private: int year,month,day; }; //时钟类的定义 class Clock { public: void SetTime(int NewH,int NewM,int NewS); void ShowTime(); private: int Hour,Minute,Second; }; 4.1.3 类成员的访问控制 4.1.3 类成员的访问控制(续1) 4.1.4 类的数据成员 一、数据成员 数据成员可以放在公有部分,称为公有数据成员,也可以放在私有或保护部分,称为私有数据成员或保护数据成员。 二、数据成员在类体中的定义格式为: 类型 数据成员; (1)数据成员只有类型,无存储类说明。 (2)在类体中不允许对所定义的数据成员进行初始化。 class Clock { public: void SetTime(int NewH,int NewM,int NewS); private: int Hour=0,Minute=0,Second=0;//出错} (3)数据成员的类型可以为任意类型(基本数据类型、复杂数据类型、已定义类的对象等)。 4.1.5 类的成员函数 类的成员函数的原型声明必须在类主体中,函数的实现可以在类主体中,也可以在类主体外。 1.成员函数的实现形式: 返回值类型 [类名::]成员函数名(参数表) { 函数体 } 在类体内定义的成员函数,编译系统自动将其作为内联函数处理; 在类的成员函数体内,可以直接访问该类的各类数据成员,包括:public、protected、private。 类的成员函数也可带默认形参值 4.1.5 类的成员函数(续1) 例4-1 简单的日期程序(tdate.h) 4.1.5 类的成员函数(续2) 作用域运算符:: 4.1.5 类的成员函数(续3) 2.带默认值的成员函数 void TDate::SetDate(int y=2000,int m=1,int d=1) { year=y; month=m; day=d; } 3.内联成员函数——显式声明与隐式声明 class TDate { public: void SetDate(i

文档评论(0)

jiupshaieuk12 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档