UML中的四种关系

一、Association关联关系

说明:Assocition(关联):描述了两个或多个类之间的结构性关系。

(1)普通关联:

1)Association name名称:用以描述该关系的性质。

2)Role角色:当一个类处于关联的某一端时,该类就在这个关系中扮演了一个特定的角色;角色是关联中靠近它的一端的类对另外一端的类呈现的职责。

3)Multiplicity多重性:关联角色的多重性是说明一个关联的实例中有多少个相互连接的对象。

例如():

Public Class Person

    Private employer As Company

End Class

Public Class Company

    Private employee As Person

    ‘……

End Class

例如:

Public Class CatalogEntry

    Private name As String

    Private number As Integer

    Private cost As Double

    Public Function getCost() As Double

        Return cost

    End Function

End Class

Public Class Part

    Private entry As CatalogEntry

    Public Function Cost() As Double

        Return entry.getCost

    End Function

End Class

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        Dim screw As New CatalogEntry("screw", 28834, 0.02)

        Dim screw1 As New Part(screw)

        screw1.Cost()

        ‘……

    End Sub

上面的两个例子,第一个是一个双向的普通关联,第二个例子是一个单向关联。同理,两个类之间可以有多种关联,一个类也可以和多个类关联,类也可以自身关联。

(2)聚合aggregation

说明:聚合表示一种弱的“拥有”关系,体现的是A对象可以包含B对象,但B对象不是A对象的一部分。

例:

Public Class GooseGroup

    Private arrayWildGoose As New WildGoose()

    ‘……

End Class

(3)组合composition

说明:一种强的“拥有”关系,体现了严格的部分和整体的生命周期一样。

例如:

Public Class Bird

    Private wing As Wing

    Public Sub New()

        wing = New Wing()   ‘在鸟bird类中,初始化时,实例化翅膀Wing,它们之间同时生成

    End Sub

End Class

二、Generalization泛化关系

说明:是一种特殊/一般关系,特殊元素(子元素)的对象可替代一般元素(父元素)的对象。用这种方法,子元素共享了父元素的结构和行为。

表示方法:

Public Class Dog : Inherits Animal

‘……

End Class

说明:VB.net中如果说明某个类不再被继承,可以使用notInheritable

三、Dependency依赖关系

依赖关系:

例如:

说明:动物有几大特征,比如有新陈代谢,能繁殖。而动物要有生命力,需要氧气、水以及食物等。也就是说,动物依赖氧气和水。他们之间是依赖关系(dependency),用虚线箭头来表示

例如:

Public Class Professor

    Public Function Teach(ByVal c As Course)

        ‘……

    End Function

End Class

说明:如果两个类有结构关系(关联关系),那么就不用依赖关系(两个事物一般都有这个关系)

四、Realization实现

说明:实现是类元之间的语义关系,在该关系中一个类元描述了另一个类元保证实现的契约。

表示方法:

Public Interface IShape

    Function Draw()

End Interface

Public Class Circle : Implements IShape

    Public Function Draw() Implements IShape.Draw

    End Function

End Class

时间: 2024-08-04 22:04:52

UML中的四种关系的相关文章

UML中的四种关系总结

UML中的关系主要包括四种:关联关系.依赖关系.泛化关系.实现关系.其中关联关系还包括聚合关系和组合关系. 1. 关联关系(Association) 关联关系式一种结构化的关系,是指一种对象和另一种对象有联系.给定关联的两个类,可以从其中的一个类的对象访问到另一个类的相关对象.关联关系用一条实线表示. 示例 1.1.  聚合关系(Aggregation) 聚合是关联的特例.聚合是表示整体与部分的关系,即has a 关系.聚合关系中的整体和部分是可以分离的,他们可以具有各自的生命周期,部分可以数据

盘点UML中的四种关系

生活中,我们既是独立的个体,又通过联系形成各种关系,比如说:朋友,恋人,父子,同学--于是乎,出现了神乎其神的六人定律.那么在UML中又存在什么样的关系呢?下面我们来梳理一下. 关联(Association) 描述了两个或多个类之间的结构性关系. 图示:直线或直线+箭头 双向关联: 指双方都知道对方的存在,都可以调用对方的公共属性和方法. 箭头及指向:双向的关联可以有两个箭头或者没有箭头 例1:公司和人 将来在Person类中会有属性名为employer,类型为Company ;在Company

【转】UML中的几种关系详细解析

UML图中类之间的关系:依赖,泛化,关联,聚合,组合,实现 类与类图 1) 类(Class)封装了数据和行为,是面向对象的重要组成部分,它是具有相同属性.操作.关系的对象集合的总称. 2) 在系统中,每个类具有一定的职责,职责指的是类所担任的任务,即类要完成什么样的功能,要承担什么样的义务.一个类可以有多种职责,设计得好的类一般只有一种职责,在定义类的时候,将类的职责分解成为类的属性和操作(即方法). 3) 类的属性即类的数据职责,类的操作即类的行为职责 一.依赖关系(Dependence) 依

浅谈JavaEE中的Hibernate中的四种关系映射(三)

今天我们一起来探讨一下有关Hibernate四种关系映射,大家可能会有疑惑,关系映射不就是只有三种(一对一,一对多,多对多)吗?这里我们再多说一个继承映射关系,虽然它使用频繁度没有前三个那么多,但是它在一些特定情况下,还是非常有用的,至于有什么用下面马上就要讲.这些关系映射实际上就是对应着关系型数据库中的几种关系的类型.我们都知道Hibernate的作用是将面向关系数据操作,转换成面向对象的操作,其中关系映射文件就是实现这个转换的核心.我们都知道如果我们仅仅使用SQL语句建表并且去维护表与表之间

(UML总结一)四种关系

UML统一建模语言是用来设计软件蓝图的可视化建模语言.支持面向对象系统的分析.设计.实现和交付等各个环节,可以用于系统的理解.设计.浏览.维护和信息控制.UML是由基本构造块.规则和其中的公共机制组成. UML的基本构造块包括事物.关系和图.事物是构成模型图的一些基本图示标识,标识一些面向对象的基本概念.关系是基本图示符号之间的关系.图是从特定的视角对系统所做的抽象描述. 最让人头疼的就是四种基本的关系:关联.依赖.泛化.实现.如图,关联还有特殊情况:聚合和组合. 一.下面让我们先从理论上来理解

UML中的几种关系(UML Relationships)

依赖(Dependency) 依赖可以理解为一个类A使用到了另一个类B,而这种使用关系是具有偶然性的.临时性的.非常弱的,但是B类的变化会影响到A:比如某人要过河,需要借用一条船,此时人与船之间的关系就是依赖:表现在代码层面,为类B作为参数被类A在某个method方法中使用. 图形表示如下: 代码实现如下(C#): PS:企鹅依赖于气候,一但南极春天到来,温度小于-10度后,它们将集体迁移到北极去. 关联(Association ) 关联和泛化是依赖的两种特别形式,关联可是是单向关联和双向关联,

UML中类图的四种关系及其代码实现

在uml图中 最复杂的也就是泛化,实现,依赖,关联,这四种关系了,如果弄清了这几种关系那么在理解UML图的时候就会变得轻车熟路了! 如果你对着几种关系一点都不熟悉的话可以看一下uml中的四种关系,这篇博客简单的介绍了一下这几种关系,本文将重点的介绍一下,这几种关系在代码里如何实现的! 泛化关系 我想这个也可能是最简单的关系了,泛化就是特殊到一半的过程,也就是继承的相反的过程,子类继承自父类,而父类是从子类泛化而来! 泛化(generalization)关系是一个类(称为子类.子接口)继承另外的一

UML——四种关系

         在画类图之前,首先要理清UML中的四种关系,常见的有以下四种关系: 泛化(Generalization),  实现(Realization),关联(Association),依赖(Dependency),而在关联中又包括:聚合(Aggregation),组合(Composition),在这几种关系中他们又有剪不断的联系. 一.概念 [泛化]:是一种继承关系,表示一般与特殊的关系,它指定了子类如何特化父类的所有特征和行为.箭头指向:带三角箭头的实线,箭头指向父类. [实现]:是一

【菜鸟也疯狂UML系列】——浅析UML四种关系

在UML中.关系是很重要的.它抽象出对象之间的联系,让对象构成某个联系起来的结构.以下将简要分析一下UML中的四种关系:关联.依赖,泛化,实现. 一.举例罗列 1.关联(Association) 关联是用来连接有结构关系的对象,能够连接同样类或者不同类.也能够是双向关联和单向关联. 举例说明: 单向关联:人打开电视机.是一个单向关联. 双向关联:人和公司的关系,人是公司的雇员,公司是人的雇主.(1个公司有0或者n个雇员) watermark/2/text/aHR0cDovL2Jsb2cuY3Nk