UML在代碼中的展示

依賴:一個類使用了另一個類,這種關係是臨時的、脆弱的。
如人須要過河,須要船,這時人.過河(船)  中船被當作參數傳入,船的實現變化會影響過河方法。
 
 
聚合:體現是總體與部分、has-a的關係,此時總體與部分之間是可分離的,他們能夠具備各自的生命週期,部分能夠屬於多個總體對象,也能夠爲多個總體對象共享。
如公司與員工,一個員工能夠脫離公司到其餘公司成爲員工,員工也能夠單獨存在,這裏的依賴比較弱。
在代碼中:
class Company{
     private staffArray:Staff[] = [];
     public addStaff(staff:Staff){
         this.staffArray.push(staff);
     }
}
 
 
組合:體現的是一種contains-a的關係,這種關係比聚合更強,也稱爲強聚合;他一樣體現總體與部分間的關係,但此時總體與部分是不可分的,總體的生命週期結束也就意味着部分的生命週期結束;
如人與大腦,大雁與翅膀,大雁類在實例化以前必定要先實例化翅膀,兩個類緊密耦合在一塊兒 它們有相同的生命週期 翅膀類(Wings)不能夠脫離大雁類(Goose)而獨立存在 
 
在代碼中:
 
class Goose{
     public wings:Wings = null;
     constructor(){
          wings = new Wings();
     }
}

  

 

關係所表現的強弱程度依次爲:組合>聚合>關聯>依賴;java

相關文章
相關標籤/搜索