参考 :blog
依赖关系 : 在Java语言中体现为局域变量、方法的形参,或者对静态方法的调用。
class Driver { //使用形参方式发生依赖关系 public void drive1(Car car){ car.run(); } //使用局部变量发生依赖关系 public void drive2(){ Car car = new Car(); car.run(); } //使用静态变量发生依赖关系 public void drive3(){ Car.run(); } }
关联 ,聚合 ,组合 ,耦合度逐渐增加!都是关联关系!
以司机和车的关系为例:
关联 :“车不是我的,我只是个司机,别人给我什么车我就开什么车,我使用这个车。”
它使一个类知道另一个类的属性和方法。例如如果A依赖于B,则B体现为A的全局变量。如person类和company类
class Driver { //使用成员变量形式实现关联 Car mycar; public void drive(){ mycar.run(); } ... //使用方法参数形式实现关联 public void drive(Car car){ car.run(); } }
聚合: 一般使用成员变量形式实现,一般使用setter方法给成员变量赋值“车是一辆私家车,是司机财产的一部分”车的生命周期与司机无关
聚合关系是整体和个体的关系 ,普通关联关系的两个类处于同一层次上,而聚合关系的两个类处于不同的层次,一个是整体,一个是部分
class Driver { //使用成员变量形式实现聚合关系 Car mycar; public void drive(){ mycar.run(); } }
组合 : "车是司机的必须有的财产,要想成为一个司机必须要先有辆车,车要是没了,司机也不想活了。而且司机要是不干司机了,这个车就砸了,别人谁也别想用" ------ 相互依赖,而前面两种还构不成这么强的耦合 , 一般通过构造方法给成员变量赋值!
public Driver(Car car){ mycar = car; }
关联、聚合、组合只能配合语义,结合上下文才能够判断出来,而只给出一段代码让我们判断是关联,聚合,还是组合关系,则是无法判断的。
相关推荐
UML 中继承、实现、依赖、关联、聚合、组合的联系与区别 UML 中的继承关系是指一个类继承另外一个类的功能,并可以增加它自己的新功能的能力,继承是类与类或者接口与接口之间最常见的关系。在 Java 中此类关系通过...
UML 中依赖泛化关联实现聚合组合的 C# 实现 UML 中类图是软件设计中最重要的工具之一,它能够帮助我们更好地设计和管理软件系统。今天,我们将讨论 UML 中的依赖泛化关联实现聚合组合的 C# 实现。 首先,让我们...
本文将深入探讨面向对象中的四种基本关系:依赖、关联、聚合和组合,以及它们在实际应用中的含义和用例。 ### 一、依赖(Dependency) 依赖是最弱的一种关系,表示一个类依赖于另一个类的接口或实现,但这种依赖通常...
UML关系(泛化,实现,依赖,关联(聚合,组合))
### UML中依赖、泛化、关联、聚合与组合的Java实现详解 #### UML基础知识概览 统一建模语言(UML)作为一种图形化的标准化建模语言,为软件开发提供了强大的可视化工具,帮助开发者理解、设计和记录软件系统。UML...
### UML学习之依赖、关联、聚合、组合与继承 #### 一、泛化(Generalization) **概念:** 泛化表示的是类与类之间的继承关系、接口与接口之间的继承关系,或者是类对接口的实现关系。在UML中,泛化关系通常用一个带...
UML类关系-依赖、关联、聚合和组合 UML(Unified Modeling Language)是软件设计领域中的一种标准化建模语言,用于描述软件系统的结构、行为和架构。UML类关系是UML中的一种基本概念,描述了类之间的关系。今天,...
几种类间关系:继承、实现、依赖、关联、聚合、组合。可做为开发设计时速查手册。
本文将深入探讨UML类关系中的四种关键概念:依赖、关联、聚合和组合,以及它们在软件设计中的应用。 1. 依赖(Dependency) 依赖是UML中最弱的一种关系,表示一个类(或对象)的实现或行为需要另一个类(或对象)的...
在UML中,有六种主要的类间关系:继承、实现、依赖、关联、聚合和组合。理解这些关系对于设计高质量的软件架构至关重要。 1. **继承**: 继承是类与类之间的一种层次结构关系,表示一个类(子类)可以从另一个类...
本篇文章将深入探讨UML类图中的五种主要关系:关联、组合、聚合、依赖和泛化,以及它们在实际编程中的应用。 **关联** 是类之间的一种结构关系,表示类之间的连接或相互作用。它通常用一条实线表示,可以是单向或...
UML类图关系泛化、继承、实现、依赖、关联、聚合、组合 UML类图关系是Unified Modeling Language(统一建模语言)的核心概念之一,用于描述系统中的对象之间的关系。本文将对UML类图关系中的泛化、继承、实现、依赖...
本文将详细探讨UML中的一些关键概念,包括依赖、泛化、关联、聚合、组合以及实现,并结合C#语言给出具体实现示例。 1. 泛化(Generalization): 泛化关系在UML中代表了继承,它表示一个类(子类)继承自另一个类...
Java依赖、关联、聚合、组合之间的区别详解 在 Java 编程中,了解依赖、关联、聚合、组合之间的区别是非常重要的。这些概念都是 Java 面向对象编程的基础知识,正确理解它们可以帮助开发者设计出更加灵活、可维护的...
在这篇博客“#0x003B UML类图之关联、聚合、组合、依赖”中,作者探讨了类图中的四种主要关系:关联、聚合、组合和依赖,这些都是理解面向对象设计的关键概念。 关联是UML类图中最基本的关系,表示两个或多个类之间...
UML类图关系(泛化、继承、实现、依赖、关联、聚合、组合).doc
本文将深入探讨UML中的五个关键关系:继承、实现、依赖、关联和聚合,以及它们在软件设计中的作用。 1. **继承(Inheritance)**: 继承是面向对象编程的核心概念之一,它允许一个类(子类或派生类)从另一个类...
(5)聚合:又称组装,其原则是:把一个复杂的事物看成若干比较简单的事物的组装体,从而简化对复杂事物的描述。 (6)关联:是人类思考问题时经常运用的思想方法:通过一个事物联想到另外的事物。能使人发生联想的...
### 关联、聚合(Aggregation)以及组合(Composition)的区别 在面向对象设计中,类之间的关系是非常重要的概念。这不仅有助于理解系统架构,还能帮助开发者更好地组织代码。本篇文章将详细探讨关联、聚合...
UML 类图关系大全中有多种关系,包括泛化、关联、依赖、聚合、组合等。 1. 关联关系 关联关系是类图中最基本的关系类型。它描述了类之间的相互关系,可以是单向的,也可以是双向的。双向关联关系表示两个类之间的...