目錄定義
uml參與者示例
定義:
單例模式的意思就是只有乙個例項。單例模式確保某乙個類只有乙個例項,而且自行例項化並向整個系統提供這個例項。這個類稱為單例類。
應用:
每台計算機可以有若干個印表機,但只能有乙個printer spooler, 以避免兩個列印作業同時輸出到印表機中。每台計算機可以有若干傳真卡,但是只應該有乙個軟體負責管理傳真卡,以避免出現兩份傳真作業同時傳到傳真卡中的情況。每台計算機可以有若干通訊埠,系統應當集中管理這些通訊埠,以避免乙個通訊埠同時被兩個請求同時呼叫。
uml:
參與者:
singleton 角色:定義乙個例項操作,同一段時間只能被乙個客戶訪問。
示例:
namespace singletonpattern實際運用:console.readkey();}}
class singleton
public
static singleton instance()
return _instance;}}}
using system;using system.collections.generic;
using system.threading;
namespace dofactory.gangoffour.singleton.realworld
// load balance 15 server requests
loadbalancer balancer = loadbalancer.getloadbalancer();
for (int i = 0; i < 15; i++)
// wait for user
console.readkey();}}
///
/// the 'singleton' class
///
class loadbalancer
public
static loadbalancer getloadbalancer()}}
return _instance;
}// ******, but effective random load balancer
public
string server}}}
大話設計模式 單例模式
在開發過程中,其實很多情況下,都需要用到單例模式來維持物件的唯一性。比如執行緒池 資料來源 sessionfactory等。一般的做法 懶漢式 public class myclass 宣告乙個靜態方法來返或乙個單例物件 public static myclass getinstance 但是這個會...
大話設計模式 單例模式
一 單例模式 保證乙個類僅有乙個例項,並提供乙個訪問它的全域性訪問點。二 例項 public class singleton public static singleton getinstance return singleton public class singletondousync publ...
大話設計模式 設計模式 單例設計模式
解決的問題 保證乙個類在記憶體中的唯一性。比如,必須要對於多個程式使用同乙個配置資訊時,就需要保證該物件的唯一性。原理 如何保證物件的唯一性呢?不允許其他程式使用new建立該類物件 在該類中建立乙個本類物件 對外提供乙個公共方法,使其他程式可以獲取該例項。步驟 私有化該類的建構函式 通過new在本類...