架 软考架构师知识库 系统架构设计师 · 课件全文检索
已就绪 127 份课件 1966 页

面向对象技术-UML图

第十三章-面向对象设计 · 18 页 · 1902 字 录播 讲义

面向对象技术-UML图

项目 内容
来源 录播
章节 第十三章-面向对象设计
标签 讲义
页数 18
总字数 1902
原始课件 基础录播课/第十三章-面向对象设计/面向对象技术-UML图.pdf

本文由课件自动整理,页内文字按原始讲义阅读顺序还原;[图] 表示该位置存在图示,

图示内容请对照原始课件查看。


目录


第 1 页 · N E W P L A N

软考高级架构师

一

段

新

征

程

第 2 页 · 大纲介绍

提示:本页以图示为主,下列文本为图中标注文字。

[图]

第 3 页 · UML

UML是统一建模语言,和程序设计语言并无关系。

UML三个要素:UML的基本构造块、支配这些构造块如何放置在一起的规则和运用与整个语言的一

些公共机制。

UML的基本构造块包括:事物(对模型中最具有代表性的成分的抽象)、关系(把事务结合在一起)、图

(聚集了相关的事物)。

UML中有四种事物:结构事物、行为事物、分组事物、注释事物。

[图]

结构事物:模型的静态部分,如类、

接口、用例、构件等;如右图示例:

第 4 页 · 事物

行为事物:模型的动态部分,如交互、活动、状态机

[图]

分组事物:模型的组织部分,如包;

注释事物:模型的解释部分,依附于一个元素或一组元素之上对其进行约束或解释的简单符号。

[图]

第 5 页 · 关系

依赖:一个事物的语义依赖于另一个事物的语义的变化而变化

关联:是一种结构关系,描述了一组链,链是对象之间的连接。分为组合和聚合,都是部分和整体的关系,

其中组合事物之间关系更强。两个类之间的关联,实际上是两个类所扮演角色的关联,因此,两个类之间可

以有多个由不同角色标识的关联。

泛化:一般/特殊的关系,子类和父类之间的关系

实现:一个类元指定了另一个类元保证执行的契约。

[图]

[图]

[图]

第 6 页 · 类图

类图:静态图,为系统的静态设计视图,展现一组对象、接口、协作和它们之间的关系。

多重度:指的是不同类之间的联系,类似于数据库设计的表与表的关系

[图]

第 7 页 · 对象图

对象图:静态图,展现某一时刻一组对象及它们之间的关系,为类图的某一快照。在没有类图的前提下

,对象图就是静态设计视图。

[图]

第 8 页 · 用例图

用例图:静态图,展现了一组用例、参与者以及它们之间的关系。

用例图中的参与者是人、硬件或其他系统可以扮演的角色;用例是参与者完成的一系列操作。

用例之间的关系:包含(include)、扩展(extend)、泛化。

[图]

第 9 页 · 序列图

序列图:即顺序图,动态图,是场景的图形化表示,描述了以时间顺序组织的对象之间的交互活动。

有同步消息(进行阻塞调用,调用者中止执行,等待控制权返回,需要等待返回消息,用实心三角箭头

表示)、异步消息(发出消息后继续执行,不引起调用者阻塞,也不等待返回消息,由空心箭头表示)、

返回消息(由从右到左的虚线箭头表示)三种。

[图]

第 10 页 · 通信图

通信图:动态图,即协作图,是顺序图的另一种表示方法,也是由对象和消息组成的

图,只不过不强调时间顺序,只强调事件之间的通信,而且也没有固定的画法规则,

和顺序图统称为交互图。如下:

[图]

第 11 页 · 状态图

状态图:动态图,展现了一个状态机,描述单个对象在多个用例中的行为,包括简

单状态和组合状态。转换可以通过事件触发器触发,事件触发后相应的监护条件会

进行检查。

状态图中转换和状态是两个独立的概念,如下:图中方框代表状态,箭头上的代表

触发事件,实心圆点为起点和终点。下图描述的就是一个图书的状态变化

[图]

第 12 页 · 活动图

[图]

活动图:动态图,是一种特殊的状态图,

展现了在系统内从一个活动到另二个活动

的流程。

活动的分岔和汇合线是一条水平粗线。

每个分岔的分支数代表了可同时运行的线

程数。

活动图中能够并行执行的是在一个分岔粗

线下的分支上的活动。

第 13 页 · 构件图

构件图(组件图):静态图,为系统静态实现视图,展现了一组构件之间的组织和依赖。

[图]

第 14 页 · 部署图

部署图:静态图,为系统静态部署视图,部署图描述的事物理模块的节点分布。它与构件图相关,

通常一个结点包含一个或多个构件。其依赖关系类似于包依赖,因此部署组件之间的依赖是单向的

类似于包含关系。

[图]

第 15 页 · 真题

【2020】UML图中,对象图展现了(),()所示对象图与下图所示类图不一致

(A)一组对象、接口、协作和它们之间的关系

[图]

(B)一组用例、参与者以及它们之间的关系

(C)某一时刻一组对象以及它们之间的关系

(D)以时间顺序组织的对象之间的交互活动

[图]

[图]

(A)

(C)

[图]

[图]

(B)

(D)

第 16 页 · 真题

【2019】采用面向对象方法进行软件开发时,将汽车作为一个系统。以下()之间不属于组

合(Composition)关系。

(A)汽车和座位

(B)汽车和车窗

(C)汽车和发动机

(D)汽车和音乐系统

第 17 页 · 真题

【2014】如下所示的UML序列图中,(42)表示返回消息,Account类必须实现的方法有(43)。

(42)

A. tansID

B.balance

[图]

C. withdraw

D.deposit

(43)

A.start

B.checkBalance()和withdraw()

C.deposit

D.checkBalance()、withdraw()

和deposit()

第 18 页 · T H E E N D

功不唐捐,玉汝于成!

开

启

新

征

程