天天看點

類和類之間的關系(1)

一、類和類之間的關系

UML類圖中,常見以下幾種關系:

1​、泛化(Generalization)

 是一種繼承關系,比如動物類和老虎類,老虎繼承動物,子類如何特化父類的所有特征和行為

箭頭指向:帶三角箭頭的實線,箭頭指向父類

 我們使用類圖如下

類和類之間的關系(1)

代碼表示如下

Class Animal {}
Class Tiger extends Animal {}      

2、實作(Realization)

 類與接口的關系,類是接口所有特征和行為的實作

 箭頭指向:帶三角箭頭的虛線,箭頭指向接口

類和類之間的關系(1)
1. interface A {}
2. class B implement A {}      

3、關聯(Association)

是一種擁有(has)的關系,一個類的成員變量是另一個類的執行個體對象,可以雙向的也可以是單向

箭頭指向:帶普通箭頭的實心線,指向被擁有者 

類圖如下,表示A類關聯B類

類和類之間的關系(1)
1. class B {}
2. class A {
3.     private B b;
4. }      

4、依賴(Dependency)

是一種使用(use)的關系,即一個類的實作需要另一個類的協助,一般不使用雙向的互相依賴.

箭頭及指向:帶箭頭的虛線,指向被使用者

類圖如下,這裡表示A依賴于B

類和類之間的關系(1)

 但是這裡需要注意,依賴一般可以通過形式參數、局部變量、靜态方法的調用、傳回值來表示

  • 形式參數代碼如下
1. class B {}
2. class A {
3. public A() {}
4. public void method(B b) {}
5. }      

繼續閱讀