一 設計模式之單例模式

定義:確保某一個類只有一個實例,而且自行實例化並向整個系統提供這個實例

 

類圖

 

 

 

 

 

優缺點:

優:1. 內存中僅一個實例,故減少了內存開支

2. 由於只生成一個實例,故減少了系統性能開銷(如讀取配置,產生依賴對象等,利用常駐內存的方式,僅生成一個對象

3.可以避免對資源的多重佔用(如只有一個實例存在,避免對同一資源文件同時寫操作)

 

缺: 1. 單例模式沒有接口,擴展困難

2. 與單一職責原則有衝突

 

使用場景

1.       要求生成唯一序列號的環境

2.       整個項目需要一個共享訪問點或共享數據(web頁面的計數器)

3.       創建一個對象需要消耗的資源過多時

注意事項

    單例模式的另外一種實現方式,存在線程不安全問題

 

有時候我們要求一個類有兩三個對象?單例模式如何解決?

 

 

 

 

 

 

 

通用代碼

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章