- 1、本文档共81页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章面向对象开发的分析与设计.
2) 类 类是对一组有相同属性和相同操作的对象的定义,一个类所包含的操作和属性描述一组对象的共同属性和行为。类是在对象之上的抽象,对象则是类的具体化,是类的实例。类可有其子类,也可有其它类,形成类层次结构。 3) 消息 消息是对象之间进行通信的一种规格说明。一般它由三部分组成:接收消息的对象、消息名及实际变元。 2)继承 继承是面向对象技术能够提高软件开发效率的重要原因之一,其定义是:特殊类的对象拥有其一般类的全部属性与服务,称作特殊类对一般类的继承。 继承分为单继承(一个子类只有一个父类)和多重继承(一个类有多个父类)。类的对象是各自封闭的,如果没继承性机制,则类的对象中数据、方法就会出现大量重复。继承不仅支持系统的可重用性,而且还促进系统的可扩充性。 3)多态性 同一消息为不同的对象接受时可产生完全不同的行动,这种现象称为多态性。利用多态性用户可发送一个通用的信息,而将所有的实现细节都留给接受消息的对象自行决定,因此,同一消息即可调用不同的方法。多态性的实现受到继承性的支持,利用类继承的层次关系,把具有通用功能的协议存放在类层次中尽可能高的地方,而将实现这一功能的不同方法置于较低层次,这样,在这些低层次上生成的对象就能给通用消息以不同的响应。在面向对象编程语言中可通过在派生类中重定义基类函数(定义为重载函数或虚函数)来实现多态性。 3.面向对象的实现 即指软件功能的编码实现,它包括:每个对象的内部功能的实现;确立对象哪一些处理能力应在哪些类中进行描述;确定并实现系统的界面、输出的形式及其它控制机理等,总之是实现在OOD阶段所规定的各个对象所应完成的任务。 (3)参与者 所谓的参与者(actor)是指所有存在于系统外部并与系统进行交互的人或其他系统。因此参与者可以是人,可以是事物,也可以是时间或其他系统等等。还有一点需要注意的是,参与者不是指人或事物本身,而是表示人或事物当时所扮演的角色。UML中用直立人形图标代表参与者。 参与者用来表示使用系统的对象,即系统用户,可以是一个人或者另一个系统。参与者的角色名应该用他们使用系统时的工作头衔,要避免起一个实际的人名。 图 UML中的图共有10种,如图6-2所示,这些图可划分为两类,一类是为系统的静态结构建模的,另一类是为系统的动态结构建模的,分别称之为静态模型和动态模型。静态模型捕获物件以及物件之间的静态关系,动态模型捕获物件是如何交互以产生软件系统所需的行为。 其中各图的作用在于: 用例图:需求捕获,测试依据。 类图:类以及类之间的相互关系。 对象图:对象以及对象之间的相互关系。 包图:类的集合。 构件图:构件及其相互依赖关系。 部署图:构件在各节点上的部署。 顺序图:强调时间顺序的交互图。 协作图:强调对象协作的交互图。 状态图:类所经历的各种状态。 活动图:对工作流程建模。 6.2.3 UML的静态建模机制 所有的事物都有两个方面:静态结构和动态行为。任何建模语言都以静态建模机制为基础,标准建模语言UML也不例外。 UML的静态建模机制包括用例图、类图、对象图、包、构件图和部署图。 1.用例图(Use case diagram) 用例图叙述的是用户应该怎样去使用系统,也就是说用例图描述的是关于系统功能的一个概述。与目标系统交互的人或系统被称为参与者,而参与者使用的功能则被称为用例。用例图可以包含注释和约束,还可以包含包,用于将模型中的元素组合成更大的模块。用例图的目的是描述用户希望系统支持的所有功能,但是对于这些功能的实现细节却不提。 用例图反映了用户对系统的期望,并且描述了系统的特征与系统特征中的共同行为, 为客户观察自己的需求提供了简单易行的方法。? 用例图由参与者、用例、系统边界、关联关系、包含关系、扩展关系和泛化关系这6个元素组成,用画图的方法来完成。 在UML中,用例图主要元素是用例和参与者。 (1)用例 用例是外部可见的系统功能单元,这些功能由系统单元所提供,并通过一系列系统单元与一个或多个参与者之间交换的消息所表达。用例的用途是,在不揭示系统内部构造的前提下定义连贯的行为。可以理解为用例是参与者想要系统做的事情。对于对用例的命名,可以给用例取一个简单、描述性的名称,一般为带有动作性的词。用例在画图中用椭圆来表示。 (2)系统边界 系统边界是用来表示正在建模系统的边界。边界内表示系统的组成部分,边界外表示系统外部。系统边界在画图中方框来表示,同时附上系统的名称,系统边界框指明了系统的范围,即矩形内部的用例表示的是准备要实现的功能。参与者画在边界的外面,用例画在边界里面。 P174 图6-1
文档评论(0)