关联与依赖以及组合与聚合之间的区别

         最近在准备面试题,看到个问题是关联与依赖之间的关系,脑海里有印象,但还是比较模糊,百度了一番,将结果记录一下,以便后用。

         聚合是表示两个对象之间是整体和部分的弱关系,部分的生命周期可以超越整体,比如电脑与鼠标就是典型的聚合关系,用UML图表示如下:

        组合是表示两个对象之间是整体与部分的强关系,部分的生命周期不能超越整体,或者说部分不能脱离整体而单独存在,组合关系中的“部分”是不能共享的。人和眼睛就是典型的组合关系,用UML图表示如下:


       组合和聚合都是在一个类中包含另一个类的对象,形式上完全一样,他俩的本质区别就是“部分”的生命周期不同。

       关联可以简单的认为是一个类作为另一个类的属性。组合是一种特殊的聚合,聚合是一种特殊的关联。

      依赖一般是一个类作为另一个类的某一方法里局部变量或者实参。

尊重版权,转载请注明本文链接

                                      

                                           欢迎关注行者摩罗微信公众号(xingzhemoluo),共同交流编程经验,扫描下方二维码即可;                    

                                                                           
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值