java

設(shè)計(jì)模式

單例設(shè)計(jì)

public class myclass {
  private myclass(){
  public static mycalss getinstance(){ 
    return myclass();
  }
}

但是,為了保證只返回一個對象的實(shí)例,用如下代碼:

public class myclass {
  private static ASingletonClass singletonInstance;
  private myclass(){
  public static mycalss getinstance(){ 
     if(singletonInstance == null){
        singletonInstance = new ASingletonClass();
          }
        return singletonInstance();
  }
}

UML類圖中類與類的表示關(guān)系
1.依賴關(guān)系(Dependency)
單向,表示一個類依賴于另一個類的定義,其中一個類的變化將影響另一個類, 如果A依賴于B,則B表現(xiàn)為A的局部變量,方法參數(shù),靜態(tài)調(diào)用方法等


2.關(guān)聯(lián)關(guān)系(Association)

單向或雙向(通常避免雙向關(guān)聯(lián)),“?。瑁幔蟆。帷薄∪绻鸄帶單向關(guān)聯(lián)B,則說A?。瑁幔蟆。帷通常變現(xiàn)為全局變量

3.聚合關(guān)系(Aggregation)

單向,關(guān)聯(lián)關(guān)系的一種,關(guān)聯(lián)的兩個對象通常是平等的,聚合一般不平等,有一個整體和局部的感覺



4.組合關(guān)系(Composition)
單向,一種強(qiáng)依賴的特殊聚合關(guān)系

Head,Body,Arm和Leg組合成People,其生命周期相同,如果整體不存在了,部分也將消亡
5.繼承關(guān)系(Inheritance)

類實(shí)現(xiàn)接口,類繼承抽象類,類繼承父類都屬于這種關(guān)系

可以分得更細(xì):

實(shí)現(xiàn)(Realization):類實(shí)現(xiàn)接口屬于這種關(guān)系

泛化(Generalization):即"is a"關(guān)系,類繼承抽象類,類繼承父類都屬于這種關(guān)系

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容