UML (Unified Modeling Language)是面向对象设计中常用的一种图形化建模语言。它用来表现软件系统不同层面的架构和设计,有助于开发者进行可视化建模、开发和文档化。在UML图中,不同的符号代表不同的意思,本文将从多个角度来分析这些符号的代表含义。
1.类图中的符号
UML类图用来表示对象类、类之间的关系以及类上的操作和属性。在类图中,主要包含以下符号:
- 类(Class):用长方形表示,其中包含类名、属性及方法。
- 抽象类(Abstract Class):用斜体字长方形表示,表示不能直接实例化的类。
- 接口(Interface):用平行四边形表示,表示系统中的一个协议或者合同,规定了需要遵守的行为。
- 枚举类(Enum):用带箭头的矩形表示,表示包含固定数量的实例的类。
- 关联(Association):用一条线表示,表示类之间的关系。如果箭头只在一侧,则表示单向关联,箭头在两侧则代表双向关联。
- 聚合(Aggregation):用空心的菱形表示,表示“整体-部分”的关系。其中整体可以包含多个部分,部分可以同时属于多个整体。
- 组合(Composition):用实心的菱形表示,表示“整体-部分”的关系。其中整体包含的部分不能再属于其他整体。
- 依赖(Dependency):用虚线箭头表示,反映了一个元素需要另一个元素才能正确执行操作。
- 实现(Realization):用带三角箭头的虚线表示,表明类实现了接口。
2.用例图中的符号
UML用例图主要用于描述系统和外部环境之间的交互关系,强调系统功能和用户需求。在用例图中,主要包含以下符号:
- 系统边界(System Boundary):用一个长方形表示,表示系统和外部环境之间的界限。
- 用例(Use Case):用一个椭圆形表示,表示系统所提供的功能或者用户需求。
- 活动(Activity):用一个矩形表示,表示一组密集相关的操作。
- 系统角色(System Role):用一个人形图标表示,表示和系统进行交互的对象。
- 关联(Association):用一条实线表示,表示系统角色和用例之间的关系。
- 包含(Include):用一个带箭头的虚线表示,表示某一个用例被包含在另一个用例中。
- 扩展(Extend):用一个带箭头的虚线表示,表示某个用例在满足一定条件下可以被扩展的功能。
3.序列图中的符号
UML序列图用于描述对象之间的交互,包括消息传递、对象创建和销毁等。在序列图中,主要包含以下符号:
- 对象(Object):用一个矩形表示,表示某个对象在一段时间内的存在情况。
- 实线箭头(Message):表示在两个对象之间的消息传递。
- 虚线箭头(Message):表示在两个对象之间的异步消息传递。
- 创建对象(Create Object):用一个带箭头的实线表示,表示对象在一段时间内被创建。
- 删除对象(Destroy Object):用一个带箭头的实线表示,表示对象在一段时间内被销毁。
- 约束(Constraint):用有名字的方括号表示,用来说明消息序列间的关系。
- 片段(Fragment):用分号拆分出的框表示一个操作或交互的片段。
综上所述,在UML图中,不同的符号代表着不同的意思。类图中的符号主要用于表示类之间的关系,包括关联、聚合和组合,而用例图中的符号则用于表示系统和外部环境之间的交互关系,包括用例、活动和系统角色。序列图中的符号主要用于描述对象之间的交互,包括消息传递、对象创建和销毁等。熟练掌握这些符号的含义,有助于开发人员快速理解UML图,并且从而更好地设计和开发软件系统。
微信扫一扫,领取最新备考资料