單例設計模式

2021-07-28 01:56:27 字數 895 閱讀 9428

解決乙個類在記憶體中只存在乙個物件

1、為了避免其他程式過多的建立該類物件,先禁止其他程式建立該物件

2、為了讓其他程式可以訪問該類物件,可以在本類中自定義乙個物件

3、為了方便其他程式對自定義物件的訪問,可以對外提供一些訪問方式

1、將建構函式私有化

2、在類中建立乙個本類物件

3、提供乙個方法可以獲取到本類物件

當需要將事物的物件保證在記憶體中的唯一性,就可以將以上三步加上

第一種體現形式(餓漢式)

先初始化物件

single一進記憶體,就已經建立好了物件

class single 

private static single s = new single;

public static single getinstance()

}class demo

}

第二種體現形式(懶漢式)

物件的延時載入,方法被呼叫時,才初始化物件

single進記憶體時,物件還沒有存在,只有在呼叫getinstance方法時,才建立物件

class single 

private static single s = null;

public static single getinstance() }}

class demo

}

原則:定義單例,建議使用餓漢式

面試時,一般面試懶漢式,處理執行緒的同步問題

單例設計模式(餓漢單例設計模式 懶漢單例設計模式)

1.什麼是單例 單例的意思是乙個類永遠只存在乙個物件,不能建立多個物件。2.為什麼要用單例 開發中有很多的物件我們只需要乙個,例如虛擬機器物件,任務管理器物件 物件越多越佔記憶體,有時候只需要乙個物件就可以實現業務,單例可以節省記憶體空間。3.如何實現單例 單例的實現方式有 餓漢單例設計模式 通過類...

設計模式 單例設計模式

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

設計模式 單例設計模式

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