UML类图和时序图

UML类图和时序图

UML类图

表明类(对象)之前关系的一种方式。

  1. 泛型关系:

代码里就是继承关系。

泛型关系

  1. 实现关系:

继承关系

  1. 依赖关系

只要两个类之间有关系,就可以叫做有依赖关系

依赖关系

依赖关系可以是成员变量,可以是参数。

作为参数存在的时候只有当方法被调用的时候才会用到另一个类。

  1. 关联关系

关联关系

强依赖关系,体现为成员变量。

关联关系根据两个对象的生命周期又可以分成聚合关系和组合关系。

  1. 聚合关系:

B由A组成。
表示整体由部分构成的语义,与组合关系不同的是,整体和部分不是强依赖的,即使整体不存在了,部分仍然存在;

聚合关系

  1. 组合关系:

同样表示整体由部分构成的语义,但组合关系是一种强依赖的特殊聚合关系,如果整体不存在了,则部分也不存在了;

组合关系

如何理解聚合和组合的区别?

生命周期:
聚合:A和B生命周期不同
组合:A和B生命周期相同。

生活案例:
聚合:雁群有雁子
组合:雁子有翅膀

代码区别:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
//聚合:GooseGroup对象死亡了,其中的Goose还可以存在。
public  class GooseGroup
{
      public Goose goose;
      public GooseGroup(Goose goose)
      {
          this.goose = goose;
      }
}

//组合:GooseGroup对象死亡了,其中的Wings也死亡。
public class Goose
{
public Wings wings;
public Goose()
{
wings=new Wings();
}
}

时序

[时序图]https://www.cnblogs.com/ywqu/archive/2009/12/22/1629426.html