UML类图学习小结

参考链接见;https://www.jianshu.com/p/57620b762160https://www.cnblogs.com/shindo/p/5579191.htmlhttps://baike.baidu.com/item/%E7%B1%BB%E5%9B%BE/4670826?fr=aladdin

1.类图基本属性

第一格:类名
斜体表示抽象

第二格:属性(field)、第三格:方法(method) 
-表示private  
#表示protected 
+表示public
~表示default,也就是包权限  
_下划线表示static  
  



接下来介绍三种类之间的关系:

一般关系表现为继承或实现关系(is a),关联关系表现为变量(has a ),依赖关系表现为函数中的参数(use a)。

尤其要注意的是关联与依赖的区别,总的来说就是关联关系比依赖关系更强。

关联:一个类是另一个类的成员变量,可以是单向的,也可以是双向的。

依赖:一个类的某个方法参数类型为另一个类。

类图中的关系表示

类图中的关系表示

2. 一般关系(又称泛化(Generalization)

 2.1继承(Inheritance)

 表示方法: 用一个空心箭头+实线,箭头指向父类,父类不是接口。

 2.2 实现(Realization、Implementation)

 表示方法:空心箭头+虚线,箭头指向父类,父类是接口。

3. 依赖(Dependency)

 表示方法:虚线+箭头,箭头指向被依赖的一方,也就是指向局部变量。

4.关联(Association)

 关联关系从箭头指向又可进一步分为单向关联、双向关联和自关联。

 从关联强度可划分为聚合关系和组合关系(又称合成、复合)

 4.1聚合(Aggregation)

表示方法:空心菱形+实线+箭头,箭头指向整体。

聚合表示一种弱的‘拥有’关系,即has-a的关系,体现的是A对象可以包含B对象,但 两个对象具有各自的生命周期。比如人和自己的蓝色帽子。

4.2 组合(Composition)

表示方法:实心菱形+实线+箭头,还可以使用连线两端的数字表示某一端有几个实例。

组合是一种强的‘拥有’关系,是一种contains-a的关系,体现了严格的部分和整体关系,部分和整体的生命周期一样。比如人和手。

猜你喜欢

转载自blog.csdn.net/qq_42987967/article/details/119906645