第2章面向对象程序设计方法导论(论文资料).pptVIP

第2章面向对象程序设计方法导论(论文资料).ppt

  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文档。上传文档
查看更多
第2章面向对象程序设计方法导论(论文资料)

第 2 章 面向对象程序设计方法导论 2.1 面向对象的基本概念 2.2 面向对象模型 2.3 面向对象的软件开发 习 题 二 2.1 面向对象的基本概念 2.1.1 对象 在现实世界中,对象有两大类。① 我们身边存在的一切有形事物和抽象概念都是对象。有形事物的例子如一个教师、一件衣服、一本书、一个饭店、一座楼、一个学校等;抽象概念的例子如学校校规、企业规定等。② 我们身边发生的一切事件都是对象,例如一场足球比赛、一次流感侵袭、一次到医院的就诊过程、一次到图书馆的借书过程等。不同的对象具有各自不同的特征和功能。例如,饭店具有饭店的特征和功能,学校具有学校的特征和功能;又例如,就诊过程具有就诊过程的特征和功能,借书过程具有借书过程的特征和功能。 由此可见,现实世界中的对象具有如下特征: (1) 有一个名字用来惟一标识该对象; (2) 有一组状态用来描述其特征; (3) 有一组操作用来实现其功能。 例如,有一个教师对象,姓名叫张三,性别男,职称副教授,学历本科,可讲授计算机学科本科生的课程和做计算机学科研究生的导师。在这里,张三是这个对象的名字,男性、副教授职称和本科学历是这个教师的特征,能讲授计算机学科本科生的课程和做计算机学科研究生的导师是这个教师具有的能力(功能)。 面向对象方法中的对象概念和现实世界中的对象概念类同。在面向对象方法中,对象是既包括属性(状态)数据,又包括作用于属性数据的一组操作(行为,方法、服务)的封装体,或者说,对象是属性数据和操作的封装体。在现实世界中,对象的能力通常称为操作或行为。在面向对象方法中,对象的能力通常称为方法或服务,对象的属性数据或状态数据通常称为属性。 在各种不同的支持面向对象的高级语言中,数据和操作有不同的术语。在C++语言中,属性称作数据成员,服务称作成员函数。 对象是面向对象方法中最基本和最核心的概念。 2.1.2 类 在现实世界中,类这个术语是对一组相似对象的抽象描述。例如,作为教师对象,有张三、李四、王五等,每个对象有不同的性别、职称和学历特征,有讲授不同学科课程和做不同学科研究生导师的能力。而教师类则是对教师这类对象所应具有的共同特征和能力(功能)集合的抽象描述,教师这类对象应具有性别、职称和学历特征,应有讲授某学科本科生课程的能力,有些人还有做某学科研究生导师的能力。 在面向对象方法中,类是对具有相同属性和相同服务的一组相似对象的抽象,或者说,类所包含的属性和服务描述了一组对象的共有的属性和服务。换句话说,类是建立某个具体对象时使用的模型或模板。 面向对象方法中程序设计的主体是类。类是相同属性和服务的封装体,因此类具有模块性;类是对具有相同属性和服务的一个或多个对象的抽象描述,因此类具有抽象性;子类可以在继承父类所有属性和服务的基础上,再增加自己特有的属性和服务,或在某些操作中与父类有不同的服务,因此类具有继承性。类的这种模块性和抽象性,使面向对象方法设计的模块较传统方法设计的模块有更高的重复使用率;类的这种继承性使面向对象方法设计的软件系统可维护性和系统升级能力大大提高。 把一组对象的共同特性加以抽象并表示在一个类中的能力,是面向对象方法最重要的一点。由此,软件设计人员可在软件设计过程中不断丰富和完善自己的、可重复使用的类包或类库。目前,成熟的支持面向对象方法的高级语言,如C++等,都带有种类非常丰富、功能非常完善的类库,可大大方便软件设计人员进行软件设计。 2.1.3 实例 在面向对象方法中,类是对具有相同属性和相同服务的一组相似对象的抽象描述,但在现实世界中,抽象描述的类是并不具体存在的,例如,现实世界中只存在具体的教师张三、李四、王五等,并不存在抽象的教师。我们把按照类这个模板所建立的一个个具体的对象称作类的实际例子,通常简称为实例。 在面向对象方法中,对象这个术语有时是指一个具体的对象,有时是指抽象的对象——类。例如,在2.1.1节中,对象是属性和服务的封装体的关于对象的定义,实际上是抽象的对象——类的定义。但若使用术语实例,术语对象则一定是指一个具体的对象。 2.1.4 消息 在面向对象方法中,消息是向某个对象提出执行该对象具有的某个服务的申请。不同对象之间通过发送消息向对方提出服务要求,接受消息的对象主动完成指定服务。当一个消息发送给某个对象时,包含有要求接收对象去执行某个服务的信息。接收到消息的对象经过解释,然后予以响应,这种通信机制称作消息传递。发送消息的对象不需要知道接收消息的对象如何对消息予以响应。 通常,一个消息由以下三部分组成: (1) 接收消息的对象; (2) 消息名; (3) 零个或若干个参数。 例如,在C+

文档评论(0)

138****7331 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档