`
iamcrzay
  • 浏览: 57638 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

聚合和组合的不同(Aggregation vs Compostition)

 
阅读更多
今天看到聚合和组合 不禁想清楚的了解到二者的区别
     聚合关系(Aggregation Relationship):
    聚合关系是一种特殊的关联关系,它表示类间的关系是整体与部分的关系。更简单的书关联关系中一个类描述了一个较大的事物,它由小的事物组成,这种关系就是聚合,它描述了
   
    组合关系:
     聚合表示的是整体与部分之间的关联,组成是更强形式的的关联,整体有管理部分的特有的职责并且他们有一致的生命周期,可以这么说,组成是另一种形态的聚合,他在聚合的基础上添加了更精确的一些语意。也称"contains-a"。

聚合和组合的最大的区别是在组合关联中 部分与整体有着同样的生命周期。
聚合关系中,代表部分事物的可以属于多个聚合对象,可以为多个聚合对象共享,而且可以随时改变它所从属的聚合对象.代表部分事物的对象与代表聚合事物对象的生存期无关,一旦删除了它的一个聚合对象,不一定也就随即删除代表部分事物的对象.在组合关系中,代表整体事物的对象负责创建和删除代表部分事物的对象,代表部分事物只属于一个组合对象.一旦删除了组合对象,也就随即删除了相应的代表部分事物的对象.
分享到:
评论

相关推荐

    UML 聚合和组合的区别

    UML 聚合和组合的区别 UML 中的聚合和组合是两种重要的关联关系,它们之间的区别是很多开发者经常混淆的。以下是对 UML 聚合和组合的详细解释: 聚合(Aggregation) 聚合是一种特殊的关联关系,它描述的是一种...

    华三交换机配置端口聚合之三层端口配置静态和动态聚合

    华三交换机配置端口聚合是一种常见的网络配置方式,通过将多个物理端口组合成一个逻辑端口,提高网络的可靠性和传输速度。在本文中,我们将详细介绍华三交换机配置端口聚合之三层端口配置静态和动态聚合的过程。 一...

    UML类关系-依赖,关联,聚合和组合

    UML类关系-依赖、关联、聚合和组合 UML(Unified Modeling Language)是软件设计领域中的一种标准化建模语言,用于描述软件系统的结构、行为和架构。UML类关系是UML中的一种基本概念,描述了类之间的关系。今天,...

    面向对象的依赖、关联、聚合、组合关系

    依赖关系用于表示临时的交互需求,关联关系用于表示长期的联系,而聚合和组合则分别描述了不同强度的整体与部分之间的关系。了解并掌握这些关系,可以帮助开发者更有效地设计出清晰、灵活且可扩展的系统架构。在实践...

    MongoDB 聚合管道(Aggregation Pipeline)

    其中,聚合管道(Aggregation Pipeline)是MongoDB中一个非常重要的特性,用于对数据进行复杂处理和分析。接下来,我们将详细地探讨MongoDB聚合管道的相关知识点。 首先,从概念上理解,MongoDB的聚合管道可以类比...

    [面试/笔试系列6]关联、聚合(Aggregation)以及组合(Composition)的区别

    ### 关联、聚合(Aggregation...通过上述分析,我们可以看出,关联、聚合和组合都是用于描述类之间的关系,但它们在关系强度、责任归属以及生命周期管理方面有所不同。理解这些概念对于进行良好的面向对象设计至关重要。

    UML学习之依赖_关联_聚合_组合_继承

    聚合和组合都表示类之间的整体与部分关系。它们之间的区别主要在于整体与部分之间的关系强度。 1. **聚合(Aggregation):** - 特点:表示整体与部分之间的弱关系,部分可以独立于整体存在。 - 示例代码: ```cpp...

    UML中依赖泛化关联实现聚合组合的C#实现

    在 C# 中,我们可以使用继承、接口和委托来实现 UML 中的依赖泛化关联实现聚合组合。例如,我们可以使用继承来实现泛化关系,可以使用接口来实现实现关系,可以使用委托来实现依赖关系。 在实际开发中,我们可以...

    UML类关系:依赖、关联、聚合、组合

    本文将深入探讨UML类关系中的四种关键概念:依赖、关联、聚合和组合,以及它们在软件设计中的应用。 1. 依赖(Dependency) 依赖是UML中最弱的一种关系,表示一个类(或对象)的实现或行为需要另一个类(或对象)的...

    cisco链路聚合实验

    Cisco设备支持多种链路聚合协议,包括LACP(Link Aggregation Control Protocol)和PAgP(Port Aggregation Protocol)。 在本文档中,我们将详细介绍如何使用Cisco设备进行链路聚合实验,包括二层交换和三层交换...

    合成聚合复用原则_刘邦VS韩信.pdf

    合成(Composition)和聚合(Aggregation)都是关联关系的表现形式,它们都是对象之间的一种结构关系,但各有特点。 聚合关系类似于“has-a”关系,它表示一种整体与部分的关系,但并不意味着整体的生命周期管理...

    H3C交换机链路聚合

    [R111-Route-Aggregation1]ip add 192.168.254.1 24 配置IP地址 三层聚合可直接配置 [R111]int range GigabitEthernet 6/1 GigabitEthernet 6/0 进入需要添加的端口 [R111-if-range]port link-aggregation group 3 ...

    以太链路聚合@跨设备以太链路聚合

    链路聚合(Link Aggregation),又称作以太链路聚合(Route Aggregation,简称RAGG),是一种将多条物理以太网链路组合成一条逻辑链路的技术,用以增加链路带宽并提高网络连接的可靠性。在链路聚合中,各个物理链路...

    tcp.tar.gz_aggregation_aggregation in ns2_ns2_ns2 aggregation_tc

    标签"aggregation_in_ns2"、"ns2_aggregation"和"tcp_fragment"进一步强调了NS2中的聚合功能和TCP分片。这表明该压缩包可能包含了用于模拟这些功能的具体模块或脚本,供研究者和开发者使用。 综上所述,通过对NS2...

    Association, Aggregation and Composition的区别

    其中,Association、Aggregation 和 Composition 是三个常见的 UML 元素,它们之间的区别非常重要。本文将详细解释这三个元素的概念、特点和 Java 中的映射关系。 Association(关联) 关联是一种结构化关系,表明...

    UML中继承实现依赖关联聚合组合的联系与区别_线条箭头.doc

    UML 中继承、实现、依赖、关联、聚合、组合的联系与区别 UML 中的继承关系是指一个类继承另外一个类的功能,并可以增加它自己的新功能的能力,继承是类与类或者接口与接口之间最常见的关系。在 Java 中此类关系通过...

    MA5680T链路聚合

    综上所述,通过对MA5680T链路聚合的详细配置步骤分析,我们不仅了解了链路聚合技术的基本原理和优势,还掌握了在华为MA5680T设备上的具体配置方法。这有助于在网络运维过程中更好地利用链路聚合技术来提高网络的稳定...

    IEEE Std 802.1AX-2008 Link Aggregation

    链路聚合,或称LAG(Link Aggregation Group),是一种将多个物理连接组合成一个逻辑链路的技术,使得媒体访问控制(MAC)客户端可以将链路聚合组视为单一的高带宽链接。这种技术的核心是通过N个并行的全双工点对点...

Global site tag (gtag.js) - Google Analytics