a.保證外界不能隨意建立物件,為了達到這個目的,對建構函式私有化。
b.類本身必須建立乙個物件。
c.對外界提供乙個公共訪問方式。
單例模式分兩種,分別是餓漢式與懶漢式,開發中常用的是餓漢式。
餓漢式:指類一載入就建立物件的單例模式。
懶漢式:什麼時候用,就什麼時候建立物件。
以下是餓漢式與懶漢式的例子:
首先看**結構:
餓漢式:
懶漢式:
值得注意的一點是懶漢式由於會延遲載入,所以開發用餓漢式。另外懶漢式在多執行緒中使用時有可能會建立多個物件,所以需要對其加鎖(synchronized可加在方法上),避免這種情況發生。
設計模式之單例模式
前一段時間買了一本秦小波寫的 設計模式之禪 網上對這書的評價很高。現在還沒有看很多,但是有些地方頗有感觸,也並不是所有的地方都能看懂,但是會慢慢研究的。自己對於設計模式的感覺就是乙個字 牛!感覺會23種設計模式並且會熟練運用的人,真的就是大師級的牛人了,設計模式是乙個專案主管或者架構師一定要會的東西...
設計模式之單例模式
package com.xie.singleton public class singleton 提供乙個共有的靜態的入口方法 public static singleton getinstance 懶漢式 延遲載入 提供乙個私有的靜態的成員變數,但不做初始化 private static sing...
設計模式之 單例模式
單例模式 singleton 保證乙個類僅有乙個例項,並提供乙個訪問它的全域性訪問點。單例模式 單件模式 使用方法返回唯一的例項 public class singleton private static singleton instance public static singleton geti...