《软件工程-第9章第2节.pptx

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

9.2面向对象的概念

9.2.1面向对象的基本思想面向对象的基本出发点就是尽可能按照人类认识世界的方法和思维方式来分析和解决问题,客观世界是由许多具体的事物或事件、抽象的概念及规则等组成的。因此,我们将任何感兴趣或要加以研究的事物、概念都统称为对象。面向对象的方法正是以对象作为最基本的元素,它也是分析问题、解决问题的核心。由此可见,面向对象方法很自然地符合人类的认识规律。计算机实现的对象与真实世界具有一对一的关系,不必作任何转换,这样就使面向对象更易于为人们所理解、接受和掌握。

9.2.2面向对象的基本概念1.对象对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。对象类型主要有以下几种:(1)有形实体:指一切看得见、摸得着的实物,如计算机、机房、机器人和工件等。这些都属于有形实体,也是最容易识别的对象。(2)作用:指人或组织所起的作用,如医生、教师、学生、工人、公司和部门等。

9.2.2面向对象的基本概念(3)事件:指在特定时间所发生的事,如飞行、演出、事故和开会等。(4)性能说明:指厂商对产品性能的说明,如产品名字、型号及各种性能指标等。对象不仅能表示结构化的数据,而且能表示抽象的事件、规则以及复杂的工程实体。因此,对象具有很强的表达能力和描述功能。

9.2.2面向对象的基本概念2.对象的状态和行为对象具有状态,一个对象用数据值来描述它的状态,如某个具体的学生张三,具有姓名、年龄、性别、家庭地址、学历及所在学校等数据值,用这些数据值来表示这个具体的学生的情况。对象还有操作,用于改变对象的状态,对象及其操作就是对象的行为。如某个工人经过“增加工资”的操作后,他的工资额就发生变化。

9.2.2面向对象的基本概念对象实现了数据和操作的结合,使数据和操作封装于对象的统一体中;对象内的数据具有自己的操作,从而可灵活地专门描述对象的独特行为,具有较强的独立性和自治性;其内部状态不受或很少受外界的影响,具有很好的模块化特点。对象为软件重用奠定了坚实的基础。

9.2.2面向对象的基本概念3.类具有相同或相似性质对象的抽象就是类。因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象。类具有属性,它是对象的状态的抽象,用数据结构来描述类的属性;类具有操作,它是对象的行为的抽象,用操作名和实现该操作的方法来描述。

9.2.2面向对象的基本概念例如,人、教师、学生、公司、长方形、工厂和窗口等都是类的例子;每个人都有年龄、性别、名字及正在从事的工作,这些就是人这个类的属性;而“画长方形”、“显示长方形”则是长方形这个类具有的操作。对象和类之间的关系如图9.1所示。

图9.1对象、类和消息传递

9.2.2面向对象的基本概念4.类的关系在客观世界中有若干类,这些类之间有一定的结构关系,通常有两种主要的结构关系,即一般具体结构关系及整体部分结构关系。一般具体结构称为分类结构,也可以说是“或”关系,是“isa”关系。例如,汽车和交通工具都是类。它们之间的关系是一种“或”关系,汽车“是一种”交通工具。类的这种层次结构可用来描述现实世界中的一般化的抽象关系,通常越在上层的类越具有一般性和共性,越在下层的类越具体、越细化。

9.2.2面向对象的基本概念整体部分结构称为组装结构,它们之间的关系是一种“与”关系,是“hasa”关系。例如,汽车和发动机都是类,它们之间是一种“与”关系,汽车“有一个”发动机。类的这种层次关系可用来描述现实世界中的类的组成的抽象关系。上层的类具有整体性,下层的类具有成员性。在类的结构关系中,通常上层类称为父类或超类,下层类称为子类。

9.2.2面向对象的基本概念5.消息和方法对象之间进行通信的一种构造叫做消息。在对象的操作中,当一个消息发送给某个对象时,消息包含接收对象去执行某种操作的信息。接收消息的对象经过解释,然后给予响应。这种通信机制称为消息传递。发送一条消息至少要包含说明接收消息的对象名、发送给该对象的消息名(即对象名.方法名),一般还要对参数加以说明,参数可以是只有认识消息的对象所知道的变量名,或者是所有对象都知道的全局变量名。

9.2.2面向对象的基本概念消息传递是从外部使得一个对象具有某种主动数据的行为。对于一个系统来说,使用消息传递的方法可更好地利用对象的分离功能。类中操作的实现过程叫做方法,一个方法有方法名、参数及方法体。当一个对象接收一条消息后,它所包含的方法决定对象怎样动作。方法也可以发送消息给其他对象,请求执行某一动作或提供信息。由于对象的内部对用户是密封的,因而消息只是对象同外部世界连接的管道。而对象内部的数据只能被自己的

文档评论(0)

酱酱 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档