• 【UML】如何记忆UML类图的画法


    前言

    UML类图形象反映系统类之间的关系,大家非常常用。小弟不才,偶尔使用,往往每次使用都得查询各种关系的表示方式。终于,这次认真看了几遍,打算记起来。

    注意

    记忆方法只是本人联想,用于加强记忆。与该表示方式的来源没有半点关系。

    元素

    类和接口

    • +表示public,-表示private。正代表公开,负代表私密,很正常。

    类之间的各种关系

    泛化、实现

    • 泛化(可以看成继承)和实现都用三角形来表示。
    • 实现,由“无实现”到“有实现”。没东西是不是比较虚啊,所以用的是虚线
    • 泛化,原来就有实现,只不过在此基础上扩展。本身就很强,用实线
    • 在Java中的表现,泛化,就是继承;实现,就是实现嘛,被实现的可以是接口,或抽象类。

    聚合、组合

    • 聚合、组合都是用菱形表示。他们都是多个对象聚集而成,所以体积比较大,你看菱形是不是比三角形、箭头要大一点。
    • 两者都是用实线。
    • 聚合,是聚集起来合成在一起的。比如人员聚集起来合成一个团队,如果团队解散了,但人员还存在。是弱依赖关系,所以用空心的菱形
    • 组合,是(结构)组成合成在一起的。比如商品条目、配送地址信息、付款信息组成订单,如果订单消失了,付款信息也消失了(生存周期一致)。是强依赖关系,所以用实心的菱形

    关联、依赖

    • 关联、依赖都是由箭头表示(除了箭头,也想不到其他更合适的了)。
    • 关联,是静态的、非运行时的关系(什么是非运行时的关系?用Java代码来说,A关联B,那么B是A的一个属性,顿时领悟了吧)。那么稳定的关系,当然用实线了。
    • 依赖,是临时的、运行时的关系(用Java代码来说,就是参数嘛),临时的关系,用虚线表示也合理。

    参考的资料

  • 相关阅读:
    rabbitmq学习之路(五)
    rabbitmq学习之路(四)
    rabbitmq学习之路(三)
    rabbitmq学习之路(二)
    rabbitmq学习之路(一)
    回忆一下数据库中的锁问题
    feign+hystrix 进行服务降级
    vue.js之过滤器,自定义指令,自定义键盘信息以及监听数据变化
    node.js之用ajax获取数据和ejs获取数据
    用node.js实现mvc相册资源管理器
  • 原文地址:https://www.cnblogs.com/nick-huang/p/5804630.html
Copyright © 2020-2023  润新知