UML类与类之间的关系

UML中类与类之间的关系

UML中单个类由类名、属性和方法组成。从访问属性来看,又分为pulic、protected、private三种。

概述

类与类之间共有6种关系:继承、实现、依赖、关联、聚合和组合。

继承:表示两个类之间的上下级关系。当类A继承自类B时,就说类A是类B的子类,类B是类A的父类或超类。

表现形式:实线+空心三角形,三角形指向父类。

举例:

实现:表示类与接口之间的上下级关系。当类A实现自接口B时,就说类A是接口B的实现类,接口B是类A的接口。C++中接口可用抽象类来表示。

表现形式:虚线+空心三角形,三角形指向接口。

举例:

依赖:表示一个类依赖另一个类,比如驾驶员Driver需要依赖汽车类Car才能行驶。其中Car可以通过构造函数参数,方法参数,方法返回值,方法内部变量的形式存在于Driver类中。

表现形式:虚线+箭头。

举例:张三借别人的车上班

关联:表示一个类A与另一个类B之间的联系,它使类A知道类B的属性和方法。通常类B会以私有成员变量的形式存在于类A中。可以通过(构造函数,getter/setter函数)赋值。

关联形式:有一对一(员工->工牌),一对多(部门->员工),多对多(商店->商品)。

表现形式:实线+箭头。

举例:张三驾驶自己的车上班

聚合:是关联关系的一种,是更强的关联关系。聚合关系是整体和个体的关系。一般关联关系的两个类处于同一个层次上,聚合关系中的两个类处于不同的层次,一个是整体,一个是部分。

表现形式:空心菱形+实线+箭头,箭头指向个体。

举例:汽车与发动机,汽车与轮胎的关系。

组合:是关联关系的一种,是比聚合关系更强的关系。要求普通的聚合关系中代表整体的对象负责代表个体的对象的生命周期。当删除整体对象时也要级联删除个体的对象。

表现形式:实心菱形+实线+箭头,箭头指向个体。

举例:人与五脏六腑的关系,公司和部门的关系

小结

横向:平级关系
1.组合
2.聚合
3.关联
4.依赖

纵向:层级关系
1.继承
2.实现

类与类之间的强弱关系:
继承 ≈ 实现 > 组合 > 聚合 > 关联 > 依赖

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值