【重点知识讲解】一、面向对象方法的基本思想面向对象方法,作为一种认识(建模)方法论,强调了对现实世界的理解和建模,把现实世界和模拟,把现实世界到信息世界的转换工作减少到最小。适合于系统分析和设计。1、面向对象的软件开发方法一般包括面向对象分析、面向对象设计和面向对象编程三个环节。2、对象(名词)是一些属性及专用服务的封装体,它是问题空间中一些东西的抽象。它具有一组属性和一组操作。这些属性的值刻画了一个对象的状态,而这些操作是对象的行为,通过操作改变对象的状态(即属性值)。数据和操作封装于对象的统一体中,而不是分开。对象类简称类,是有相似属性和行为的多个对象的集合。3、封装即信息隐藏(名词)。对象是一个很好的封装体。它向外提供的界面包括一组数据结构(属性)和一组操作(服务),而把内部的实现细节(如函数体)隐蔽起来。4、继承(名词)指对象继承它所在类的结构、操作和约束,也指一个类(子类)继承另一个类(父类)的结构、操作和约束。继承体现了一种共享机制。5、消息:一条消息告诉一个对象做什么,它指出:发送者、接收者、需要执行的服务、需要的参数。6、面向对象有抽象性、封装性、继承性、多态性等优异特性。7、多态性(名词)•多态性又叫多形性,指相同的操作(或函数,或过程)可作用于多种类型的对象并获得不同的结果。•在面向对象方法中,可给不同类型的对象发送相同的消息,不同的对象分别作出不同的处理。二、面向对象分析1、面向对象分析:面向对象的分析(OOA)要求把问题空间分解成一些类或对象,找出这些对象的特点(即属性和服务),以及对象间的关系(一般/特殊,整体/部分关系),并由此产生一个规格说明。2、面向对象分析面临的挑战:问题空间的理解、人与人之间的通信和需求的不断变化。3、OOA由五个主要步骤构成:标识对象,标识结构,定义主题,定义属性(及实例连接),定义服务(及消息连接)。4、标识对象•寻找对象:挑剔对象。命名对象、实例及符号表示5、标识结构•分类结构(is-a)•组装结构(h’asa)6、标识主题7、定义属性7、定义服务三、面向对象设计面向对象设计可分为4个部分:问题空间部分的设计(PDC)、人机交互部分的设计(HIC)、任务管理部分的设计(TMC)和数据管理部分的设计(DMC)。5个层次:主题层、对象层、结构层、属性层和服务层。四、统一建模语言UML1、统一建模语言UML:UML是一种通用的可视化建模语言,适用于各种开发方法、信息系统生命周期的各个阶段、各种应用领域及各种开发工具。基于UML的信息系统开发包含需求、分析、设计、实现、部署和配置等步骤。(名词)2、用例图用例图从用户的角度描述系统功能。它将系统划分为对用户有意义的事务,这些事务被称为用例(usecase),用户被称为角色(actor)。3、静态图:展现系统的静态结构组成及特征,包括类图、对象图和包图。(1)类图描述系统中类的静态结构,在他的定义中不仅包括系统中的类,表示类中的联系,如关联、依赖、聚合等,也包括类的内部结构(类的属性和操作)。(2)对象图是类图的示例,对象图只能在系统的某一时间段存在。(3)包由包或类组成,包图用来描述系统的分层结构。4、行为图:行为图描述系统的动态模型和组成对象间的交互关系,包括状态图和活动图。(1)状态图描述类的对象所有可能的状态以及事件发生时状态的转移条件,状态图是对类图的补充,为哪些有多个状态,其行为受外界环境的影响并且发生改变的类画状态图。(2)活动图描述满足用例要求所要进行的活动以及活动间的约束关系。活动图的状态代表了运算执行的状态。5、交互图:交互图描述对象间交互关系,包括顺序图和协作图。(1)顺序图显示对象间的动态协作合作关系,它强调对象之间消息发送的顺序,同时显示对象之间的交互。(2)协作图描述对象间的协作关系,协作图与顺序图相似,显示对象间的动态协作关系,还显示对象以及它们之间的关系。(3)如果强调时间和顺序用顺序图;如果强调通信关系,偏向用协作图。6、实现图包括构件图和部署图(1)构件图是描述代码构件的物理结构和各构件之间的依赖关系。构件图有利于分析和理解构件之间的相互影响程度。(2)部署图定义系统中软件和硬件的物理体系结构。它显示实际的计算机和设备以及它们之间的连接管理,也可以表示连接的设备类型和构件之间的依赖性。在结点内部放置可执行构件和对象以显示结点跟可执行软件单元的对应关系。【往年试题】2008年10月选择题15.以下说法正确的是(D)A.类封装比对象封装更具体、更细致(由对象抽象出类,由具体实例化出对象)B.类是封装的最基本单位C.面向对象的类是封装良好的模块D.对于封装结构通常越在上层的类越具有一般性和共性,越在下层的类越具体、越细化填空题3.面向对象的软件开发方法一般包括__________、__________、面向对象编程三个主要环节。名词解释3.面向对象方法:简答题2009年1月选择题7.UML是一种面向对象的统一建模语言。它包含若干种图,其中,用例图展示了外部actor与系统所提供的用例之间的连接,UML中的外部actor是指(D)A.人员B.单位C.人员或单位D.人员或外部系统填空题5.面向对象设计可分为4个部分:问题空间部件、_人机交互部件______、任务管理部件和____数据管理部件___。名词解释4.封装简答题2009年10月选择题填空题5.面向对象方法的特点是抽象性、__封装____、___继承___和多态性。名词解释简答题2010年1月名词解释2.OO方法中的多态性:2010年10月选择题4.在UML中,____描述代码构件的物理结构和各构件之间的依赖关系。(B)A.部署图B.构件图C.交互图D.顺序图9.在使用UML时,若需要描述跨越多个用例的单个对象行为,用____最合适。(D)A.协作图B.序列图C.活动图D.状态图填空题5.面向对象分析面临的挑战主要有三个方面:___________、人与人之间的通信和___________。2011年1月选择题5.在UML中,________显示对象间的动态合作关系,强调对象之间消息发送的顺序,同时显示对象之间的交互。(D)A.活动图B.构件图C.状态图D.顺序图10.协作图描述了协作的________之间的交互和链接,它画成对象图的形式。(A)A.对象B.类C.用例D.状态填空题4.面向对象分析由5个主要步骤构成:标识对象、________、定义主题、________和定义服务。名词解释1.统一建模语言(UML)简答题2005年1月一、选择题9.面向对象分析是应用面向对象中对象与类、属性与服务、_______________、基于消息的通信等概念,在问题空间建立以对象为基础单元的系统的方法。二、填空题三、名词解释1.继承性四、简答题2005年10月一、选择题10.面向对象分析的基本步骤为(B)A.标识对象→定义主题→标识结构→定义属性与实例连接→定义服务与消息连接B.标识对象→标识结构→定义主题→定义服务与消息连接→定义属性与实例连接C.定义主题→标识对象→标识结构→定义属性与实例连接→定义服务与消息连接D.标识对象→标识结构→定义主题→定义属性与实例连接→定义服务与消息连接二、填空题27.OOD模型的4个部分分别是:人机交互部分、问题空间部分、___任务管理______________部分和___数据管理______________部分。三、名词解释四、简答题2006年1月一、选择题二、填空题三、名词解释四、简答题2006年10月一、选择题二、填空题三、名词解释四、简答题2007年1月一、选择题二、填空题29.不同对象收到同一消息可产生不同的结果,这种特性称为___________。多态性30.___________性是超类与子类之间共享数据和操作方法的机制。继承三、名词解释四、简答题2007年10月一、选择题二、填空题三、名词解释四、简答题2008年1月一、选择题二、填空题29.对象包括一组属性数据以及作用于这些属性数据之上的__________。操作三、名词解释四、简答题2009年10月选择题填空题31面向对象的编程语言简记为____________。OOP32.CASE系统的前端部分对应于软件生命周期的前期阶段,即____________,也对应了硬件平台的____________部分。名词解释37封装简答题