單例模式:單例模式就是乙個類的物件只有乙個例項存在,保證物件唯一
原理:該類的構造方法為私有方法,私有封裝不對外暴漏,就不能讓其它類例項化該類的物件,只能通過該類的靜態方法得到他的例項
該類中定義乙個靜態方法當我們呼叫時返回該類的例項物件
思想:不讓其他地方建立該類物件,在本類中建立乙個物件,對外提供方,讓程式直接獲取不建立新類物件
**實現:私有化建構函式
建立乙個私有靜態的本類物件
定義公有靜態方法,返回該類物件
//餓漢模式 避免了執行緒同步的問題
//缺點就是類載入就例項化從而 造成記憶體浪費
public
class
singleton1
private
static singleton1 singleton1=
newsingleton1()
;//共有靜態方法 返回類的例項
public
static singleton1 getsingleton()
}
//懶漢模式 非執行緒同步 不建議使用
public
class
singleton2
public
static singleton2 getsingleton2()
return singleton2;
}}
//執行緒同步
public class singleton2
public static synchronized singleton2 getsingleton2()
return singleton2;}
}
設計模式 實現單例模式
單例模式是最簡單的設計模式,沒有之一,相信大家也都聽說過。單例設計模式適合於乙個類只有乙個例項的情況,比如視窗管理器,列印緩衝池和檔案系統,它們都是原型的例子。典型的情況是,那些物件的型別被遍及乙個軟體系統的不同物件訪問,因此需要乙個全域性的訪問指標,這便是眾所周知的單例模式的應用。通過單例模式你可...
單例設計思想及
單例設計思想 保證類在記憶體中只有乙個物件 如何實現類在記憶體中只有乙個物件呢?構造私有 本身提供乙個物件 通過公共的方法讓外界訪問 實現方式 餓漢式 直接建立物件 執行緒安全的 懶漢式 當要用到物件的時候,再建立物件 延遲載入方式 乙個執行緒物件的時候,執行緒安全的 多個執行緒物件的時候,執行緒不...
單例設計模式(餓漢單例設計模式 懶漢單例設計模式)
1.什麼是單例 單例的意思是乙個類永遠只存在乙個物件,不能建立多個物件。2.為什麼要用單例 開發中有很多的物件我們只需要乙個,例如虛擬機器物件,任務管理器物件 物件越多越佔記憶體,有時候只需要乙個物件就可以實現業務,單例可以節省記憶體空間。3.如何實現單例 單例的實現方式有 餓漢單例設計模式 通過類...