使用通俗易懂的实物关系来说明面向对象中UML类图的各种关系

类图关系

在UML中类图有很多种关系,而以java为例,常见关系有以下6大类,分别是:

依赖,关联,聚合,组合,继承,实现


对应含义


依赖

依赖表示一个类依赖另一个类,比如驾驶员类Driver,若需要拥有行驶功能,需要依赖汽车类Car。

在Driver类中,可以通过构造方法参数、普通方法参数、方法返回值、方法内局部变量的形式来应用Driver类。

类图表现形式:虚线+箭头,箭头指向被依赖的类,如Car类


关联

表示一个类A与另一个类B之间的练习,它使类A知道类B的属性和方法。

通常类B会以私有成员变量的形式存在于类A中。可以通过构造方法或setter方法来赋值。

关联的形式有多种:一对一(一个人->身份证)、一对多(一个部门->多个员工)、多对多(一个店铺<->一种商品)

类图表现形式:实线+箭头,箭头指向被使用的类


聚合

聚合是关联的一种,属于强关联关系。聚合关系表象上是一个整体和一个个体之间的关系。

一般关联关系的两个类处于同一个层次上,而聚合关系中两个类处于不同层次上,一个是整体,一个是部分,但又不是无法分割的,有点类似与挂靠或附加这种关系。

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

比如:【学校】和【老师】的关系,学校是整体,老师是个体,但老师离开了学校仍然可以存货,比如:家教或私教等等。(可能举例不太恰当,将就看吧)。


组合

组合是一种更为特殊的聚合关系。虽然仍然是整体和个体之间的关系,但它要求两个类紧密关联,整体对象控制着个体对象的生命周期,当整体对象被销毁时,个体对象也会一并被销毁。

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

比如:【一本书】和【书中的一页纸】,当书销毁了,书中的纸张也会销毁。


继承

继承关系就比较简单,就是有着上下级关系的两个类。当类A继承类B时,即为继承关系。

类图表现形式:实线+箭头,箭头指向父类


实现

实现关系也比较简单,表示类与接口之间的上下级关系。当类A实现了接口B时,即为实现关系。

类图表现形式:虚线+箭头,箭头指向接口

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值