保證乙個類只有乙個例項,並且可以全域性訪問它。
保證不能例項化多個該物件,必須自行建立該例項
構造方法私有,確保其他類無法通過new 關鍵字建立它,保證了該類只能有乙個例項
有乙個靜態私有成員變數和靜態公有工廠方法,工廠方法負責檢查該例項
是否存在,並例項化,然後儲存在靜態成員變數中
1.要求產生唯一序列號
2.必須存在乙個物件,客戶端能夠從乙個公共資源訪問到它
3.需要控制例項數目,建立乙個物件消耗過多資源,如資料庫連線,
為了節省系統資源的時候。
public class singleton_lazy
public static synchronized singleton_lazy getlazy()
return lazy;
}}
public class singleton_lazy {
//volatile保證,當uniqueinstance變數被初始化
設計模式總結
http www.chenjiliang.com article view.aspx?articleid 6708 比較 設計模式 常用程度 適用層次 引入時機 結構複雜度 abstract factory 比較常用 應用級設計時 比較複雜 builder 一般 級 編碼時一般 factory me...
設計模式總結
模式相關的描述 裝飾者 包裝乙個物件,以提供新的行為 狀態 封閉了基於狀態的行為,並使用委託在行為之間切換 迭代器 在物件的集合之間遊走,而不暴露集合的實現 外觀 簡化一群類的介面 策略 封閉可以互換的行為,並使用委託來決定要使用哪乙個 包裝物件,以控制對此物件的訪問 工廠方法 由子類來決定要建立的...
設計模式總結
這類模式的特質是管理物件的建立過程。通常設計總是以使用工廠方法開始,當設計者發現需要更大的靈活性時,設計會向其它建立型模式演化。工廠方法模式 單例模式 抽象工廠方法模式 建造者模式 原型模式 簡單工廠模式 這類模式從程式的結構上解決模組之間的耦合問題。介面卡模式 裝飾模式 橋接模式 組合模式 享元模...