UML类图详解
这两天工作上用到了UML,顺便总结一下类图的关系:
类的表示
类图分为三层,第一层是类的名称,如果是抽象类或接口,就用斜体表示,其中接口名称的上部会用<
类之间的关系
类之间的关系有泛化(Generalize),实现(Realize),关联(Associate),聚合(Aggregate),组合(Compose),依赖(Dependency)。
1.泛化(Generalize)
关系:泛化是一种继承关系,用来表示类与类、类与抽象类、抽象类与抽象类、接口与接口之间的关系。
箭线:用空心三角形+实线表示,箭头指向父类。
2.实现(Realize)
关系:实现用来表示类与接口、抽象类与接口之间的关系。
箭线:用空心三角形+虚线表示,箭头指向接口。
3.关联(Associate)
关系:关联可以是双向的,也可以是单向的;关联关系可以进一步划分为聚合及组合关系。
箭线:用实线箭头表示,双向的关联可以有两个箭头或者没有箭头,单向的关联有一个箭头。
比如,荷花受季节影响,箭头指向季节。
4.聚合(Aggregate)
关系:聚合用来表示整体与部分的关系,是一种弱的关联关系,体现为A可以包含B,但B不一定是A的一部分。
箭线:用空心的菱形+实线箭头表示,菱形指向整体。
5.组合(Compose)
关系:组合用来表示整体与部分的关系,是一种强的关联关系,体现了严格的整体和部分的关系,整体和部分的生命周期一样。
箭线:用实心的菱形+实线箭头表示,菱形指向整体。
6.依赖(Dependency)
关系:依赖用来表示两者之间的依从关系。
箭线:用虚线箭头表示,箭头指向被依赖的对象。
比如,陆生植物依赖土壤,而水生植物依赖水,当然了,陆生植物也依赖水,这里只是为了更直观地体现陆生和水生的本质区别。
完整的类图












