1、什麼是單例模式
單例模式解決乙個類在記憶體中只存在乙個物件的問題。
2、單例模式適合場景
單例模式適合於乙個類只有乙個例項的情況,比如視窗管理器,列印緩衝池和檔案系統,它們都是原型的例子。典型的情況是,那些物件的型別被遍及乙個軟體系統 的不同物件訪問,因此需要乙個全域性的訪問指標,這便是眾所周知的單例模式的應用。當然這只有在你確信你不再需要任何多於乙個的例項的情況下。
3、單例模式特點:
①確保乙個類只有乙個例項被建立提供了乙個對物件的全域性訪問指標
②在不影響單例類的客戶端的情況下允許將來有多個例項 。
4、餓漢式
特點:先初始化物件
實現方法:
①避免其他程式過多地建立該類物件
②為讓其他程式能夠訪問到該類物件,在奔類中自定義乙個物件
③為方便其他程式對自定義物件的訪問,提供對外的訪問方式。
class singletest
}class student
//②在類中建立乙個本類物件
private static student s = new student();
//③提供乙個方法可以獲取到該物件
public static student getinstance()
public void setage(int age)
public int getage()
}
5、懶漢式
特點:物件被方法呼叫時才初始化,即物件的延時載入。開發當中常用餓漢式,但面試常問的是懶漢式。
實現方法:
class person
private static person p = null;
public static person getinstance()
} return p;
}}
java設計模式 單例模式 學習筆記
1 為什麼使用單例設計模式?為了避免多個例項造成資源浪費,與避免多例項多次呼叫出現的錯誤 2 什麼是單例設計模式?單例模式能夠保證整個應用中有且只有乙個例項 3 怎麼使用單例模式?1 私有化該類的建構函式 2 在 本類中new乙個物件 3 定義乙個公有的方法,返回由該類建立的物件 4 單例模式的寫法...
java筆記 單例設計模式
解決乙個類在記憶體中只存在乙個物件 思路 1 為了避免其它程式過多建立該類物件,先禁止其它程式建立該類物件 2 為了讓其它程式可以訪問到該類物件,只好在本類中自定義乙個物件 3 為了方便其它程式對自定義物件的訪問,可以對外提供一些訪問方式 用 體現的思路 1 將建構函式私有化 2 在類中建立乙個本類...
Java筆記 單例設計模式
作用 保證在應用程式最多只有乙個例項 好處 不用一直例項化物件,提公升了程式執行效率 實現資料共享 物件只有被建立才被呼叫 public class singleton 例項化方法必須通過物件呼叫 設定為靜態方法 return public static singleton getinstance ...