UML类图的几种关系

泛化(Generalization)

概念:is a kind of 描述类和类之间的继承关系,是一种特殊-一般关系,主要表现为父类与子类之间的继承。

举例:
如下图所示,员工是父类,工程师和经理是子类,工程师和经理都继承了员工父类的属性和行为。
类似的还有:动物(父类)-猫(子类);汽车(父类)-小轿车(子类)
图形表示:用带三角箭头的实线表示,箭头指向父类

在这里插入图片描述
继承分为单重继承和多重继承
单重继承:一个子类有且只有一个父类(如下图所示:活期账户和储蓄账户只继承了银行账户这一个父类)

在这里插入图片描述
多重继承::一个类有两个或两个以上的父类(如下图所示:汽车这个父类下面有陆路车和水上车两个子类,他们下面又有一个子类水陆两用车,水陆两用车既继承了陆地车辆的特征,也继承了水上车的特征,这就是多重继承)
在这里插入图片描述

实现(Realization)

概念:类是接口特征和行为的实现

图形表示:带三角箭头的虚线,箭头指向接口
在这里插入图片描述

关联 (Association)

概念:描述了两个或多个类之间的结构性关系

在这里插入图片描述
关联既可以是双向的,也可以是单向的,单向的关联有一个箭头,双向的关联可以有两个箭头也可以没有箭头

在这里插入图片描述
多向关联:一名老师拥有多名学生,一名学生也可以有多名老师,所以老师与学生的关系是多向关联关系,可以带箭头也可以不带箭头
在这里插入图片描述
单向关联:一个学生拥有多门课程,但是课程是抽象概念,不拥有学生,所以课程和学生之间是单向关联
在这里插入图片描述
自关联:老师与老师之间的关联称为自关联

关联又分为两种
聚合 (Aggregation):松耦合, 整体-部分关系,用空心菱形表示
在这里插入图片描述
解释:书架没了,书也可以独立存在,他们之间没有生命依赖关系,没有强生命力的制约,不是说先有书架再有书
组合 (Composition):整体-部分关系,组合关系用实心菱形表示
在这里插入图片描述
解释:这是一种强耦合关系,先有书,才能有页,没有书,页也就不存在了

依赖 (Dependency)

概念:依赖关系是一种使用关系,说明一个事物规格说明的变化可能影响到使用它的另一个事物。但反之未必。 依赖关系是普遍存在的。

图形表示:依赖关系用虚线箭头表示,箭头指向被依赖一方
在这里插入图片描述

各种关系的强弱顺序:泛化=实现>组合>聚合>关联>依赖

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值