設計模式 單例設計模式的思考

2021-06-22 08:32:53 字數 1121 閱讀 8842

單列設計模式:

就本人理解,所謂的單例就是在程式執行的整個週期,類的例項僅存在乙個。

餓漢式:

//餓漢式的設計

public

classsington

//獲取例項

public

staticstudent getinstance()

//但是仔細想想餓漢式的設計方式存在乙個弊端就是在類載入的時候相關變數就會被例項//化,很顯然這樣就占用了系統資源,影響了系統的效率。

//懶漢是的單例設計

public

classlazysington

//取得例項

public

staticstudent getinstance()

student

=newstudent();

}returnstudent;}

}//懶漢式的設計方式:可以延遲類的載入(在此我也是參看了相關資料找到的最好的單例設計//方式,但是我還是有疑問,下面我還是以相關**來體現)ji

//最優的單例設計思想

public

classbestsington //

定義內部類來為外部類建立例項

,實現類的延遲載入

private

static

classinnerbuilder

//獲取例項

public

staticstudent getinstance()

}//我覺得這樣做只是延遲了變數的例項化並沒有延遲類的載入

//因為類的載入是在第一次呼叫靜態的(static)getinstance()時載入的,而餓漢式的方式獲取的//例項的話也是在第一次呼叫靜態的(static)getinstance()時載入的,所以我並不認為在此提高//了系統的效率。備註:

本人也是剛接觸設計模式,對於有些理解有誤的地方希望大家能夠幫忙指出,畢竟相互學習才能進步,我寫部落格的原因也是出於這個目的。

設計模式 單例設計模式

歷史 最早是建築學領域的模式,然後gof四人由其引申到編碼方面,總結了23種設計模式 設計模式 解決某一類事情最行之有效的方法 2.1 體現 餓漢式,保證物件的唯一性 class singleton 私有化建構函式禁止該類建立物件 private static singleton st new si...

設計模式 單例設計模式

單例模式,是一種常用的軟體設計模式。在它的核心結構中只包含乙個被稱為單例的特殊類。通過單例模式可以保證系統中乙個類只有乙個例項。即乙個類只有乙個物件例項 單例模式的要點有三個 一是某個類只能有乙個例項 二是它必須自行建立這個例項 三是它必須自行向整個系統提供這個例項。單例設計模式 解決的問題 可以保...

設計模式 單例設計模式

設計模式是對問題行之有效的解決方案,它其實是一種思想。單例設計模式 解決的問題 可以保證乙個類在記憶體中只能有乙個物件。比如多個程式使用相同的配置資訊物件時,就需要保證物件的唯一性 如何保證唯一性 1 不允許其他程式用new建立類物件 2 在該類中建立乙個本類例項 3 對外提供乙個方法讓其他程式可以...