UML类图的六大关系,最佳学习理解方式

x33g5p2x  于2022-08-17 转载在 其他  
字(0.8k)|赞(0)|评价(0)|浏览(236)

UML 是什么?

比较官方的描述是这样的:
UML(Unified Modeling Language)是一种开放的方法,用于说明、可视化、构建和编写一个正在开发的、面向对象的、软件密集系统的制品的开放方法。

而我的描述:
 
UML算是 研发与非研发之间的其中一种  对于业务设计的 沟通方式。

而且,在写代码之前, 设计肯定是先行的。

没有经过思考写出来的代码...是没有含思量的。

 类图结构

接口图结构

UML类图 的 六大关系

继承、实现、组合、聚合、关联、依赖

每种关系都有自己的表示方式,也就是 线 + 箭头 组成

专业的线和箭头

专业的符号 

属性和方法前面的“+”、“-”和“#”表示访问级别:

 

+:public

-:private

#:protected

结合实例、简图 学习

继承关系

类跟类之间的继承关系,大家肯定不陌生,父子关系,子继承父。

 图示:

实现关系

类跟接口之间的实现关系,大家肯定也不陌生。

 图示:

 聚合关系

体现的是A对象(学校)可以包含B对象(老师、学生),但B对象不是A对象的一部分。

老师、学生,如果学校不存在了,他们还是可以单独存在。

聚合表示一种弱的‘拥有’关系。

图示 :

组合关系

体现的是 A对象(凤凰)可以包含B对象 (翅膀、爪子等)。A作为整体, B作为部分。

如果A没了,B也就没了。 凤凰没了, 它的翅膀也是相当于没了。

整体和部分有一致的生命周期。

组合表示一种强的‘拥有’关系。

图示 : 

关联关系

关联关系,显然就是存在 类和类之间都有关联,那就是 双向奔赴双向关联。

好比如,学生和老师之间的关联, 学生关联多个老师,老师也可以管理多个学生。

那当然也是有单向关联, 也就是学生关联多门课程, 但是课程是没法主动关联学生的。

其实,还有自己关联自己,自关联。

 图示:

依赖关系 

其实有点点类似关联关系,但是 依赖关系有个非常个性的特点,

就是 某个类的方法使用另一个类的对象作为参数。

图示:

 

好了,该篇就到这。

相关文章