設計模式 4 單例模式

2021-10-09 05:40:13 字數 658 閱讀 4587

應用最廣的模式-單例模式。

1、餓漢模式,僅下面**時,效果是懶載入的,如果這個類中有其他靜態域x,對x引用會載入類,還有就是使用掃瞄型別進行反射使用也會載入類

/**

* @author cheng

* @description 餓漢式,執行緒安全

* @since 2020/9/7 20:26

*/public class singleton

/*** 靜態變數由jvm保證只例項化一次(自然執行緒安全)

*/private static singleton instance = new singleton();

public static singleton getinstance()

}

2、靜態內部類模式

/**

* @author cheng

* @description 靜態內部類,執行緒安全,懶載入

* @since 2020/9/7 20:37

*/public class singleton2

private singleton2 getinstance()

static class singleton2holder

}

設計模式4 單例模式

保證乙個類僅有乙個例項,並提供乙個訪問他的全域性訪問點。所有類都有構造方法,假如不對他進行編碼,系統會生成空的public 的構造方法,外部類就能建立這個類的物件。為了不讓其他類能new出這個類的例項,所以需要寫乙個private 的構造方法 其實即使使用private修飾,通過反射機制還是能在外部...

設計模式 4 單例模式

單例模式屬於建立型的設計模式,其特點是在於保證乙個類只會被例項化一次,可以作為全域性唯一資源提供給系統。此處通過判斷兩個例項的位址是否一致來驗證單例模式,中包含了保證多執行緒安全的單例模式實現。由於python下的懶漢單例模式實現本人覺得是不可能的,因此下面使用了double check的方式實現了...

設計模式 4 單例模式

單例模式用來確保乙個類只有乙個例項,並提供乙個全域性訪問點。在所有的設計模式中,單例模式是最簡單也是最常用的一種設計模式,它只為乙個例項提供乙個全域性物件,內次嘗試去獲取乙個類的例項的時候,保證獲取到的都是這乙個物件。下面是關於單例模式中的一些小概念 餓漢式和懶漢式區別 餓漢就是類一旦載入,就把單例...