《软件建模与设计: UML、用例、模式和软件体系结构》一一2.4 类图

简介:

本节书摘来自华章计算机《软件建模与设计: UML、用例、模式和软件体系结构》一书中的第2章,第2.节,作者:(美)Hassan Gomaa,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

2.4 类图

在类图中,类用方框描绘,类之间的静态(永久)关系被描绘成连接方框之间的连线。UML表示法支持以下三种类之间的主要关系类型:关联(association)、整体/部分关系(whole/part relationship)和泛化/特化(generalization/specialization relationship)关系,这些关系如图2-3所示。第四种关系,即依赖关系(dependency relationship),经常被用来表示包之间是如何进行关联的,2.7节将对其进行描述。
image

图2-3 UML表示法中类图内的关系
2.4.1 关联
一个关联(association)是两个或多个类之间的一个静态的、结构化的关系。两个类之间的关联被称为二元关联(binary association),它用两个类框之间的连线表示,如图2-3a中连接classA方框和classB方框的连线。一个关联具有一个名字,并且可选择性地具有一个黑色小箭头来表示关联名称的阅读方向。每个连接类的关联线的末端标明关联的多重性(multiplicity),多重性指的是一个类的多少个实例关联到另一个类的一个实例。此外,可以用棍状箭头描绘导航的方向。
一个关联的多重性(multiplicity)指的是一个类的多少个实例可能和另一个类的单个实例有关(如图2-3a的右边)。一个类的多重性可以是一个(1)、可选(0..1)、零或多个()、一个或多个(1..),或者特定的数值范围(m...n),其中m和n是数值。
2.4.2 聚合和组合层次
聚合和组合层次(aggregation and composition hierarchy)是整体/部分(whole/part)的关系。组合关系(用黑色菱形表示)是一个比聚合关系(用空心菱形表示)更强的整体/部分关系的形式。菱形与聚合或组合中(ClassWhole)的类方框相连接(见图2-3b)。
2.4.3 泛化和特化层次
泛化/特化层次(generalization/specialization hierarchy)是一种继承关系(inheritance relationship)。泛化被描绘为一个连接子类(subclass)到父类(superclass)的具有箭头的连线,箭头与表示父类的方框连接(见图2-3c)。
2.4.4 可见性
可见性(visibility)指类中的一个元素是否在类外可见,如图2-4所示。在类图中描绘可见性是可选的。公有可见性(public visibility)使用+号,表示一个元素在类的外部是可见的。私有可见性(private visibility)使用-号,表示一个元素只在定义它的类的内部是可见的,对于其他类是隐藏的。受保护可见性(protected visibility)使用#号,表示一个元素在定义它的类及其所有子类中是可见的。
image

图2-4 UML表示法中类图内的可见性

相关文章
|
uml
UML之类图
UML之类图
299 1
|
机器学习/深度学习 人工智能 测试技术
【软件设计师备考 专题 】软件工程的未来:面向构件和统一建模语言(UML)
【软件设计师备考 专题 】软件工程的未来:面向构件和统一建模语言(UML)
344 0
|
数据可视化 Java uml
IDEA中一个被低估的功能,一键把项目代码绘制成UML类图
IDEA中一个被低估的功能,一键把项目代码绘制成UML类图
1263 1
使用工厂方法模式设计能够实现包含加法(+)、减法(-)、乘法(*)、除法(/)四种运算的计算机程序,要求输入两个数和运算符,得到运算结果。要求使用相关的工具绘制UML类图并严格按照类图的设计编写程序实
该博客文章通过UML类图和Java代码示例,展示了如何使用工厂方法模式设计一个支持加法、减法、乘法和除法运算的计算机程序,并严格按照类图设计实现程序。
1、使用简单工厂模式设计能够实现包含加法(+)、减法(-)、乘法(*)、除法(/)四种运算的计算机程序,要求输入两个数和运算符,得到运算结果。要求使用相关的工具绘制UML类图并严格按照类图的设计编写程
该博客文章展示了如何使用简单工厂模式设计一个程序,该程序能够根据用户输入的运算符(加、减、乘、除)对两个数进行计算,并提供了相应的UML类图和Java源码实现。
1、使用简单工厂模式设计能够实现包含加法(+)、减法(-)、乘法(*)、除法(/)四种运算的计算机程序,要求输入两个数和运算符,得到运算结果。要求使用相关的工具绘制UML类图并严格按照类图的设计编写程
|
应用服务中间件 uml
【UML】软件工程中常用图:类图、部署图、时序图、状态图
【UML】软件工程中常用图:类图、部署图、时序图、状态图
3556 1
|
测试技术 uml
UML面向对象建模题库
UML面向对象建模题库
261 0
|
测试技术 uml
『软件工程13』浅谈面向对象方法,统一建模语言UML
该文章介绍了面向对象方法的基本概念及其在软件工程中的应用,并详细探讨了统一建模语言(UML)的各种图示及其在系统设计中的作用。
『软件工程13』浅谈面向对象方法,统一建模语言UML
|
数据可视化 Java uml
精通UML:从类图到序列图的实战指南
【8月更文第23天】统一建模语言(Unified Modeling Language, UML)是一种用于软件工程的标准图形化语言,它提供了一套工具来帮助开发团队可视化、构造和文档化软件系统。在UML中,类图和序列图是最常用也是最重要的两种图。类图用于描述系统的静态结构,而序列图则用于表示对象之间的交互和系统的动态行为。
654 5
|
设计模式 uml
设计模式常用的UML图------类图
这篇文章介绍了UML中类图的基本概念和用途,详细解释了类与接口、类之间的关系,包括继承、实现、组合、聚合、关联和依赖等六种关系,并展示了它们在类图中的表示方法。
设计模式常用的UML图------类图