玩转设计模式-UML入门

概述

UML-统一建模语言(Unified Modeling Language)

UML类图

  • UML箭头方向:从子类指向父类(子类知道父类,父类不一定知道子类的存在,所以箭头从子类到父类)
  • 空心三角箭头:继承或实现。实线-继承(实在的继承);虚线-实现
  • 实线-关联(一个类需要借助另一个类实现功能,一般是一个类使用另一个类作为参数使用或作为返回值);虚线-依赖
  • 空心菱形-聚合;实心菱形-组合。菱形就是一个盛东西的器皿(例如盘子)。聚合代表空器皿可以放很多相同的东西,聚在一起(箭头方向所指向的类,比如大雁聚合在一起成为大雁群)。聚合是整体和局部的关系,两者有者独立的生命周期,是has a的关系,弱关系,所以为空心;组合代表器皿里已经有实体结构的存在,生死与共(比如鸟和翅膀)。,比起聚合的关系更加强烈,是contains-a的关系,强关系,所以为实心。

类的表示

在这里插入图片描述

  • ‘+’:public
  • ;-’ :private
  • '# ':protected
  • ‘~/null’:default
  • 横线:代表static修饰
  • 斜体:代表抽象修饰

示例讲解
在这里插入图片描述


UML时序图

时序图中包含的建模元素主要有:

  • 对象
  • 生命线
  • 控制焦点
  • 消息

在这里插入图片描述
实线箭头指向谁,就是调用谁的方法;调用又分为异步调用(空心箭头)和同步调用(实心箭头);虚线为返回。
该时序图有三个类:Client,Server,Device

  1. Actor调用Client的work()方法
  2. Client调用Server的open()方法
  3. Server返回结果给Client
  4. Client调用Server的print()方法
  5. Server调用Device的write()方法
  6. Device返回结果给Server
  7. Server返回结果给Client
  8. Client调用Server的close()方法
  9. Server返回结果给Client
  10. Client返回结果给Actor

猜你喜欢

转载自blog.csdn.net/weixin_40288381/article/details/87988979