·单向关联在一个单向关联中,两个类是相关的,但是只有一个类知道这种联系的存在
一个单向的关联,表示为一条带有指向已知类的开放箭头(不关闭的箭头或三角形,用于标志继承)的实线
如同标准关联,单向关联包括一个角色名和一个多重值描述,但是与标准的双向关联不同的时,单向关联只包含已知类的角色名和多重值描述
简单的说就是OverdrawAccountReport中包含了BankAccount属性,而BankAccount中不需要包含OverdrawnAccountsReport对象6
聚合的表示:聚合是一种特别类型的关联,用于描述“总体到局部”的关系
在基本的聚合关系中,部分类的生命周期独立于整体类的生命周期
举例来说,我们可以想象,车是一个整体实体,而车轮轮胎是整辆车的一部分
轮胎可以在安置到车时的前几个星期被制造,并放置于仓库中
在这个实例中,Wheel类实例清楚地独立于Car类实例而存在
然而,有些情况下,部分类的生命周期并不独立于整体类的生命周期--这称为合成聚合
举例来说,考虑公司与部门的关系
公司和部门都建模成类,在公司存在之前,部门不能存在
这里Department类的实例依赖于Company类的实例而存在
让我们更进一步探讨基本聚合和组合聚合
注意:聚合与普通的关联的区别在于:普通的关联可能只是一个简单的“包含、引用”关系,关联和被关联类之间在逻辑概念上不一定有紧密的联系,而聚合则不同,它表示的是一种内在关系紧密,相互依存,相互包含的概念,其中的一部分是构成另外一部分的不可或缺的成分
·基本聚合有聚合关系的关联指出,某个类是另外某个类的一部分
在一个聚合关系中,子类实例可以比父类存在更长的时间
为了表现一个聚合关系,你画一条从父类到部分类的实线,并在父类的关联末端画一个未填充棱形
图中清楚的表明了类Car对象包含了另一类Wheel的4个实例,这两者在概念上是密不可分的