1

UML类图学习备忘

[TOC]

1 UML类图(UML Class Diagram)

UML(Unified Modeling Language),统一建模语言,一种针对面向对象软件设计提供的建模语言;

2 类实例图示

在UML中,一个类实例由三部分组成,彼此之间用直线分割:

  • 类名。接口名 斜体表示

  • 属性(成员变量):表示格式为可见性 属性名:属性类型[ = 缺省值]
    |可见性|UML图示|

public +
protected #
private -
  • 操作(方法):表示格式为可见性 方法名(参数列表) [ : 返回类型]

3 类之间关系与图示

3.0 类关系箭头图示

关系分类 UML箭头图示
单向关联 继承关系
双向关联 继承关系
自关联 同单向关联
多重关联 待补充
聚合关系 继承关系
组合关系 继承关系
依赖/继承关系 继承关系
实现关系 继承关系

3.1 关联关系

关联关系(Association):表示对象之间存在联系,可细分为单向关联双向关联自关联多重关联聚合组合

  • 3.1.1 单向关联

  • 3.1.2 双向关联

  • 3.1.3 自关联:类的属性对象是该类自身,比如链表节点类;

  • 3.1.4 聚合关系(Aggregation):弱聚合关系,成员对象是整体对象的属性(汽车和马达);成员对象可以脱离整体对象独立存在;在Java中成员对象实例是整体对象的方法参数注入到整体对象;

  • 3.1.5 组合关系(Composition):强聚合关系,成员对象是整体对象的属性(鸟和翅膀);与聚合模式不同,整体对象控制成员对象的生命周期,一旦整体对象不存在,成员对象也将不存在,整体对象与成员对象存在同生共死的关系;在Java中组合关系同城在整体对象的构造方法中直接实例化成员对象

3.2 依赖关系

依赖关系(Dependency)在Java中通过以下方式实现:

  • 一个类对象作为另一个类的方法参数

  • 一个类对象作为另一个类中方法的成员变量

  • 一个类内部调用另一个类的静态方法

3.3 泛化关系 = 继承关系

泛化关系(Generalization)就是继承关系,表示父类与子类关系;

3.4 实现关系

接口与实现类之间存在实现关系(Realization)

参考

[1] 深入浅出UML类图


yzwall
120 声望17 粉丝

对大规模分布式系统技术兴趣浓厚


引用和评论

0 条评论