`
daragon
  • 浏览: 48970 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

关联、聚合、合成、依赖

阅读更多

注明:这些例子全部来自阎宏 《Java与模式》,谢谢你的书,开启了我设计的道路

 

一般关系:(类继承和实现接口)      


 

 
关联关系(association)
表示类与类之间的联接,有双向关联和单向关联,双向关联有两个箭头或者没有箭头,单向关联有一个箭头,表示关联的方向。


 
关联关系以实例变量的形式存在,在每一个关联的端点,还可以有一个基数(multiplicity),表明这一端点的类可以有几个实例。


 
聚合关系(aggregation)
是关联关系的一种,是强的关联关系。聚合是整体和个体的关系。聚合关系也是通过实例变量实现的。例如汽车、发动机、轮胎,一个汽车对象由一个发动机对象,四个轮胎对象组成。如图所示。


 
合成关系(composition)
合成关系也是关联关系的一种,是比聚合关系更强的关系。合成关系是不能共享的。例如人有四肢、头等。


 
依赖关系(Dependency)
与关联关系不同的是,依赖关系是以参数变量的形式传入到依赖类中的,依赖是单向的。
一个人可以买房子和车,Person类依赖于House和Car。在Java中以来关系在Java语言体现为局部变量、方法的参量,以及对静态方法的调用。

 

  • 大小: 3.9 KB
  • 大小: 4.1 KB
  • 大小: 4.4 KB
  • 大小: 14.9 KB
  • 大小: 9 KB
  • 大小: 5.1 KB
  • 大小: 2.2 KB
分享到:
评论

相关推荐

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

    主要有五种关系:泛化、依赖、关联、聚合和合成。 泛化(Generalization)是我们最常用的继承关系。例如,Employee 类和 SaleEmployee 类之间的关系就是泛化关系。 ```csharp public class Employee { } public ...

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

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

    领域驱动聚合设计工作坊

    3. **设置聚合边界**:将具有紧密关联和依赖的对象放入同一个聚合,保持概念完整性。 4. **理顺对象图**:分析并调整对象之间的关系,消除不必要的复杂性和耦合。 5. **调整聚合边界**:根据业务需求和模型的演变,...

    合成聚合复用原则_动力节点Java学院整理

    通过应用合成复用原则,我们可以将CustomerDAO和DBUtil之间的关系由继承关系变为关联关系,使用依赖注入的方式将DBUtil对象注入到CustomerDAO中。这样做可以降低类与类之间的耦合度,提高系统的灵活性和可维护性。 ...

    领域驱动聚合设计工作坊.pptx

    - 首先,通过对领域进行分析,梳理模型对象之间的关系,如继承、合成、聚合、依赖和无关系。这些关系反映了对象间的业务含义和数据依赖。 - 接着,确定领域模型中的对象是实体(Entity)还是值对象(Value Object...

    UML中类图实例讲解关系

    UML类图关系讲解 ...UML类图关系讲解了类图中的各种关系,包括继承关系、实现关系、关联关系、聚合关系、合成关系和依赖关系等。这些关系都是UML类图的基本组成部分,用于描述类和对象之间的关系。

    行业-电子政务-具有卤代-丙二酸酯内电子给体的催化剂组合物和由其制备的聚合物.zip

    这种催化剂组合物在聚合物合成中特别有用,因为它们可以控制聚合反应的进行,从而制造出具有特定性质的高分子材料。 聚合物是由重复单元连接而成的大分子,广泛应用于各个行业,包括电子政务所依赖的硬件设备如...

    UML.rar_dependent UML_uml _软件工程泛化

    "UML.rar_dependent UML_uml _软件工程泛化"这个标题表明了压缩包的内容主要关注UML中的泛化关系,以及与之相关的其他概念,如依赖、关联、聚合和合成。接下来,我们将深入探讨这些概念。 首先,泛化是UML中的一种...

    常见设计模式的解读和对应代码示例,包括设计原则和软件工程中类之间的依赖关系

    关联关系(Association) 聚合关系(Aggregation) 组合关系(Composition) 依赖关系(Dependency) 泛化关系(Generalization) 实现关系(Realization) 2、设计原则 开闭原则 里氏替换原则 依赖倒置原则 单一职责原则 接口...

    java开发中使用的设计模式

    本文主要针对依赖与关联、合成与聚合的区别以及设计模式的目的进行详细探讨。 #### 依赖与关联的区别 **依赖 (Dependency)** 依赖是一种较弱的类间关系,表示一个类(依赖者)在某些情况下需要用到另一个类(被...

    UML几种类图

    本文将详细介绍UML类图中的几种关键关系,包括一般化关系、关联关系、聚合关系、合成关系以及依赖关系。 #### 二、类图的基本元素 在理解这些关系之前,我们首先来看一下类图的基本构成要素: - **类名**:类的名字...

    UML类图使用及详细说明

    类图元素包括类、接口、继承关系、实现关系、关联关系、聚合关系、合成关系和依赖关系等。 类 类是类图的基本元素, 一般包含三个组成部分:类名、属性和方法。类名部分是不能省略的,其他组成部分可以省略。类名...

    合成复用原则.doc

    该原则强调:在进行软件复用时,应优先考虑使用组合或聚合等关联关系,而不是继承。这一原则的核心在于维持良好的封装性和降低耦合度,从而提高系统的可扩展性和可维护性。 #### 二、合成复用原则的重要性 在面向...

    UML资料汇编 基础知识学习

    依赖、关联、聚合和合成关系则体现在Java中类之间的引用、实例变量或构造函数中,体现了类与类之间的紧密耦合或松散耦合。 总之,UML类图提供了清晰的视觉模型,帮助开发者理解和设计复杂系统的结构。通过深入了解...

    设计模式六大原则

    - **使用合成/聚合:** 使用对象之间的关联关系(合成或聚合)来达到复用的目的,而不是使用继承。 #### 四、接口隔离原则(Interface Segregation Principle) **含义:** 接口隔离原则建议:“使用多个特定的...

    软件体系结构七大设计原则

    软件体系结构七大设计原则是构建高质量软件系统的基础,它们分别是:单一职责原则、开闭原则、里氏代换原则、依赖倒转原则、接口隔离原则、迪米特法则和合成聚合原则。这些原则旨在提高软件的可维护性、可扩展性和可...

    JAVA模式与设计概念总结

    这些概念包括类与类之间的各种关系,如继承、关联、聚合和合成,以及设计原则,如“开-闭”原则、里氏代换原则、依赖倒转原则、接口隔离原则、组合/聚合复用原则和迪米特法则。 1. **继承关系**:继承是面向对象...

    类图详细实例解说

    通过绘制类图,开发者可以清晰地展示系统中的类以及它们之间的各种关系,包括继承、关联、依赖、聚合和合成等,为软件设计提供一个直观的蓝图。 类图是UML中使用最广泛的图之一,它通过一组标准化的图形符号与连线...

    UML 中类图实例说明

    在UML类图中,类与类之间的关系包括继承、关联、依赖、聚合和组合等几种。 继承关系使用一个空心三角形和一条实线来表示,连接父类和子类。在继承关系中,子类会继承父类的所有属性和方法,这种关系也被称为泛化...

    讲述UML类图的画法

    类图的基本元素包括:类、接口、继承关系、关联关系、聚合关系、合成关系和依赖关系。 1. 类(Class) 在UML类图中,类用矩形框表示,矩形框分为三层:第一层显示类的名称(如果是抽象类就用斜体显示),第二层是...

Global site tag (gtag.js) - Google Analytics