UML基础知识
Posted ZBQ科技
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UML基础知识相关的知识,希望对你有一定的参考价值。
什么是UML
UML是统一建模语言,是为了面向对象开发系统的产品进行说明、可视化和编制文档的方法
类图
-
类图的设计也是面向对象分析和设计阶段的第一个最关键的步骤,系统动态行为的建模都以此为基础 -
通过对用户需求的分析,在面向对象软件开发的分析和设计阶段,通过建立类图描述软件系统的对象类型以及它们之间的关系,为进一步软件的编码实现提供足够的信息 -
开发人员、测试人员和维护人员通过类图,可以查看编码的详细信息,即软件系统的实现由哪些类构成,每个类有哪些属性和方法,以及类之间的源码依赖关系
访问权限
-
-
private -
+
public -
#
protected -
~
friendly
其它
-
_
表示属性或者方法是静态的 -
倾斜
表示抽象方法
类与类之间的关系
泛化关系(Generalization) [ is -a ]
含义:表示一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力
画法:带空心三角形的实线,空心三角形指向父类(父接口)
关联关系(Associations)
单向关联关系
介绍:第一个类含有第二个类的对象,但是第二个类不含有第一个类的对象
画法:在类图使用带箭头的实线表示,箭头从使用类指向被关联的类
-
双向关联
画法:在类图中用一条直线(可以有两个箭头)连接两个类表示它们之间的双向关联关系
和类Course的一个实例关联的类Student对象的数量为0到任意多个,用“*”来表示
和类Student的一个实例关联的类Course对象的数量为6
-
关联数量
具体数字n 比如6 * 或 0..* 0到任意多个 0..1 0个或1个 1..* 1到任意多个
实现关系(realization)
介绍:表示一个class类实现interface接口(可以是多个)
画法:带空心三角形的虚线,空心三角形指向接口
依赖关系(Dependency)
介绍:一个对象在运行期间会用到另一个对象的关系
画法:带箭头的虚线,箭头指向被使用者
组合关系(Composition)
介绍:组合是一种强的“拥有”关系,是一种contains-a的关系,体现了严格的部分和整体关系,部分和整体的生命周期一样
画法:带实心菱形的实线,菱形指向整体
聚合关系(Aggregation)
介绍:表示一种弱的“拥有”关系,即has-a的关系,体现的是A对象可以包含B对象,但B对象不是A对象的一部分。两个对象具有各自的生命周期
画法:带空心菱形的实线,菱形指向整体
示例
参考:
西北工业大学-面向对象编程与设计-马春燕
https://mubu.com/doc/explore/27218
标准文件:https://www.omg.org/spec/UML/2.5.1/PDF
https://design-patterns.readthedocs.io/zh_CN/latest/read_uml.html
https://www.jianshu.com/p/57620b762160
(此图修改自网络)
以上是关于UML基础知识的主要内容,如果未能解决你的问题,请参考以下文章