开发者社区 问答 正文

[@talishboy][¥20]OOP 中的 组合、聚合和关联有什么区别?

问题来自Java技术沙龙的李博
Java线下沙龙报名链接:https://yq.aliyun.com/activity/796

展开
收起
李博 bluemind 2018-12-14 16:53:33 2305 分享 版权
1 条回答
写回答
取消 提交回答
  • 在一个具体的java类定义里,类由多个属性构成,同是这样的形式,确实会有组合、聚合、关联的不同“叫法”,其区别主要是:
    类A里的属性有个类B,那就是关联了;
    A对B是has-a的情况是聚合,比如电脑里有CPU;
    A对B是contains-a的情况是组合,比如人有大脑;
    聚合的差别是电脑坏了、CPU可以单独拿出来再用,而组合的情况人没了大脑也就没了、一起挂;

    2019-07-17 23:21:23
    赞同 展开评论
问答分类:
问答地址: