設計模式之Singleton(單例模式)

2021-10-25 22:05:42 字數 1034 閱讀 9522

/**

* 餓漢式的單例模式

* 在類載入的時候建立單例例項,而不是等到第一次請求例項的時候的時候建立

* 1、私有 的無引數構造方法singleton(),避免外部建立例項

* 2、私有靜態屬性instance

* 3、公有靜態方法getinstance()

*/public class singleton

public static singleton getinstance()

}/**

* 懶漢式的單例模式

*在類載入的時候不建立單例例項,只有在第一次請求例項的時候的時候建立

*/public class singleton

/** * 多執行緒情況的單例模式,避免建立多個物件

*/public static singleton getinstance()}}

return instance;

}}

singleton(單例模式)abstract factory(抽象工廠模式),builder(建造者模式)

adapter(介面卡模式)interpreter(直譯器模式)proxy(**模式)decorator(裝飾模式)

1) 工廠模式:工廠類可以根據條件生成不同的子類例項,這些子類有乙個公共的抽象父類並且實現了相同的方法,但是這些方法針對不同的資料進行了不同的操作(多型方法)。當得到子類的例項後,開發人員可以呼叫基類中的方法而不必考慮到底返回的是哪乙個子類的例項。

2) **模式:給乙個物件提供乙個**物件,並由**物件控制原物件的引用。實際開發中,按照使用目的的不同,**可以分為:遠端**、虛擬**、保護**、cache**、防火牆**、同步化**、智慧型引用**。

3) 介面卡模式:把乙個類的介面變換成客戶端所期待的另一種介面,從而使原本因介面不匹配而無法在一起使用的類能夠一起工作。

4) 模板方法模式:提供乙個抽象類,將部分邏輯以具體方法或構造器的形式實現,然後宣告一些抽象方法來迫使子類實現剩餘的邏輯。不同的子類可以以不同的方式實現這些抽象方法(多型實現),從而實現不同的業務邏輯。

設計模式之 單例 Singleton

單例模式最初的定義出現於 設計模式 艾迪生維斯理,1194 保證乙個類僅有乙個例項,並提供乙個訪問它的全域性訪問點。單例模式是 設計模式 中最簡單的形式之一。這一模式的目的是使得類的乙個物件成為系統中的唯一例項。要實現這一點,可以從客戶端對其進行例項化開始。因此需要用一種只允許生成物件類的唯一例項的...

設計模式之 單件模式(Singleton)

單件模式的實現很簡單,基本上沒什麼好說,就說幾點 為什麼要單件模式?因為程式中很多物件只能有乙個,如日誌檔案,印表機等,如果出現多個就麻煩了。為什麼不用全域性變數?的確用全域性變數可以實現只有乙個物件,但是全域性變數必須在程式啟動的時候就初始化,萬一我們的物件很耗資源,但又不一定用到的話,全域性變數...

設計模式之單件模式(Singleton)

設 計模式之單件模式 singleton 將類設計成單件模式之後,在系統中生成得物件只有乙個,任何方法呼叫這個類,只能通過制定得方法得到這個類的唯一物件,類似於普通類中的靜態方法和屬性,不管這個類進行了多少次例項化,在記憶體中對於宣告的靜態方法和屬性只有乙個!利用單件模式,這個類裡的方法和屬性在記憶...