zoukankan      html  css  js  c++  java
  • Aggregation 与 Composition 的区别

    Aggregation: 聚合
    Composition: 组合

    它们都代表一种关联(association)关系
    聚合较松散,而组合较紧密

    我觉得可以理解为生命周期

    1、组合关系。
    几个点(point)连在一起构成了一个多边形(polygon)。如果多边形不存在了,构成多边形的点也就不存在了,它们是“同生死,共患难”。。。。

    就像数据库中的两个表,user(可能保存用户名、密码、用户类型等)和userinfo(可能保存地址、身份证号码等),如果要删除韚ser,必然同时要删除userinfo

    2、聚合关系
    一个订单,上面包含几个产品信息。如果订单被取消或删除了,产品还是要存在的。它们是聚合关系。
     
    Composition 是一种特殊形式的Aggregation (除了lifetime区别). 在UML语法里Composition用实心箭头表示,Aggregation用空心箭头表示。我个人理解,Composition关系中的component可以看作是heavy-weight property. 它是一个实体组成部分但是又不能独立于容器主体。  
  • 相关阅读:
    李阳疯狂英语精选365句
    线程 notify,与notifyAll 的区别
    关于Logger,Tomcat 的Logger是如何工作的
    知豆 源
    关于好多继承的问题,我们应该如何去理解
    5+1+2
    wu xing
    ALBPM Time Question
    推荐书集
    “疯狂”的定义
  • 原文地址:https://www.cnblogs.com/kakafra/p/2753471.html
Copyright © 2011-2022 走看看