【设计模式】UML类图

图基本符号可拆分为虚线,箭头,实线,空心右三角,实心右三角,空心菱形和实心菱形。由这些基本的图形进行组合构成了类图的基本符号。这里要注意这几个符号的顺序,代表了类与类之间关系的耦合程度。越向右耦合度越高。

另外一点是在看类图的时候要注意。类图的思想其实也还没有脱离面向对象的思想,以某个类为中心,有些线是射入的而有些线是射出的。射入的线表示的是这个类被哪些类所调用而射出的线则表示该类调用了 哪些类,包括泛化,关联,依赖,聚合和组合四种关系。

类图的关系

关系名概述标识符
泛化(Generalization)父类与子类之间的继承关系实线+空心三角
实现(Realization)类实现接口的某种体现形式虚线+空心三角
关联(Association)基于对象去实现各种类之间的引用关系,从而促使某些熟悉其他类的内部属性和方法。
包括单向关联与双向关联两种
实线+箭头
依赖(Dependency)当两个类显示为关联关系时,其中一个类描述的相关概念的变化将会引起另一个的概念发生变化虚线+箭头
聚合(Aggregation)体现全局与局部之间有别于同类事物或平常情况的某种关联实线+空心菱形
组合(Composition)全局与局部之间的关联,但是局部不能离开全局而独立存在实线+实心菱形

类(Class)

使用三层矩形框表示。 第一层显示类的名称,如果是抽象类,则就用斜体显示。 第二层是字段和属性。 第三层是类的方法。 注意前面的符号,‘+’表示public,‘-’表示private,‘#’表示protected。
在这里插入图片描述

接口(Interface)

使用两层矩形框表示,与类图的区别主要是顶端有<>显示 。 第一行是接口名称。 第二行是接口方法。
在这里插入图片描述

泛化(Generalization)

实现(Realization)

关联(Association)

表示类与类之间的特定对应关系,如在类A中定义类B类型的属性。按照类之间的数量对比,关联可以分为以下三种:

  • 一对一关联
  • 一对多关联
  • 多对多关联

注意:关联还要以分为单向关联和双向关联。

依赖(Dependency)

表示类与类之间的调用关系,比如类A访问类B的属性或者方法,或者类A负责实例化类B,那么可以说类A依赖类B。和关联关系不同,无须在类A中定义类B类型的属性。

聚合(Aggregation)

体现的是A对象可以包含B对象,但B对象不是A对象的一部分,例如: 公司和员工

组合(Composition)

部分和整体的关系,并且生命周期是相同的。例如:人与手

参考链接

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值