UML類圖的關係

多態

泛化(Generalization)

【定義】:是一種繼承關係,表示通常與特殊的關係,它指定了子類如何特化父類的全部特徵和行爲
【UML表示】:帶三角箭頭的實線,箭頭指向父類

【代碼表現】:A類 extends B類spa

public Class Tigger extends Animal{code

實現(Realization)

【定義】:是一種類與接口的關係,表示類是接口全部特徵和行爲的實現
【UML表示】:帶三角箭頭的虛線,箭頭指向接口

【代碼表現】:A類 implements B接口繼承

public Class Course implements Goods{接口

依賴(Dependency)

【定義】:是一種使用的關係,即一個類的實現須要另外一個類的協助
【UML表示】:帶箭頭的虛線,指向被使用者

【代碼表現】:局部變量、方法的參數或者對靜態方法的調用
生命週期

關聯

下面的三種關係從語法上是沒有區別的。只是在語義是作區分。ci

關聯(Association)

【定義】:是一種擁有的關係。類的地位仍是平等的。
【UML表示】:帶普通箭頭的實心線,指向被擁有者

【代碼表現】:成員變量

注意事項:it

  • 一般狀況下關聯是雙向的,在使用的時候會轉成單向。轉成單身的原則:以業務關注點高的類爲起點,關聯另外一個類。

聚合(Aggregation)

【定義】:是總體與部分的關係,且部分能夠離開總體而單獨存在,部分能夠多個總體使用。類有上下層的關係。
【UML表示】:帶空心菱形的實心線,菱形指向總體

【代碼表現】:成員變量
io

組合(Composition)

【定義】:是總體與部分的關係,但部分不能離開總體而單獨存在,部分只能被一個總體使用。類有上下層的關係。它們的生命週期是:同生共死,即若是總體消失了,那麼局部也會消失。
【UML表示】:帶實心菱形的實線,菱形指向總體

【代碼表現】:成員變量
變量

相關文章
相關標籤/搜索