類(lèi)之間的關(guān)系
UML把類(lèi)之間的關(guān)系分為以下5種.
● 關(guān)聯(lián):類(lèi)A與類(lèi)B的實(shí)例之間存在特定的對(duì)應(yīng)關(guān)系
● 依賴(lài):類(lèi)A訪(fǎng)問(wèn)類(lèi)B提供的服務(wù)
● 聚集:類(lèi)A為整體類(lèi),類(lèi)B為局部類(lèi),類(lèi)A的對(duì)象由類(lèi)B的對(duì)象組合而成
● 泛化:類(lèi)A繼承類(lèi)B
● 實(shí)現(xiàn):類(lèi)A實(shí)現(xiàn)了B接口
關(guān)聯(lián)(Association)
關(guān)聯(lián)指的是類(lèi)之間的特定對(duì)應(yīng)關(guān)系,在UML中用帶實(shí)線(xiàn)的箭頭表示。按照類(lèi)之間的數(shù)量對(duì)比,關(guān)聯(lián)
可以分為以下三種:
● 一對(duì)一關(guān)聯(lián)
● 一對(duì)多關(guān)聯(lián)
● 多對(duì)多關(guān)聯(lián)
注意:關(guān)聯(lián)還要以分為單向關(guān)聯(lián)和雙向關(guān)聯(lián)
依賴(lài)(Dependency)
依賴(lài)指的是類(lèi)之間的調(diào)用關(guān)系,在UML中用帶虛線(xiàn)的箭頭表示。如果類(lèi)A訪(fǎng)問(wèn)類(lèi)B的屬性或者方法,
或者類(lèi)A負(fù)責(zé)實(shí)例化類(lèi)B,那么可以說(shuō)類(lèi)A依賴(lài)類(lèi)B。和關(guān)聯(lián)關(guān)系不同,無(wú)須在類(lèi)A中定義類(lèi)B類(lèi)型的屬性。
聚集(Aggregation)
聚集指的是整體與部分之間的關(guān)系,在UML中用帶實(shí)線(xiàn)的菱形箭頭表示。
聚集關(guān)系還可以分為兩種類(lèi)型:
● 被聚集的子系統(tǒng)允許被拆卸和替換,這是普通聚集關(guān)系。
● 被聚集的子系統(tǒng)不允許被拆卸和替換,這種聚集稱(chēng)為強(qiáng)聚集關(guān)系,或者組成關(guān)系。
注:強(qiáng)聚集(組成)可用帶實(shí)線(xiàn)的實(shí)心菱形箭頭表示。
泛化(Generalization)
泛化指的是類(lèi)之間的繼承關(guān)系,在UML中用帶實(shí)線(xiàn)的三角形箭頭表示。
實(shí)現(xiàn)(Realization)
實(shí)現(xiàn)指的是類(lèi)與接口之間的關(guān)系,在UML中用帶虛線(xiàn)的三角形箭頭表示。
posted on 2007-10-21 19:36
Ke 閱讀(369)
評(píng)論(0) 編輯 收藏 所屬分類(lèi):
java