單例設計模式 保證類在記憶體中只有乙個物件

2021-09-24 10:25:48 字數 1058 閱讀 1374

/*

* 餓漢式和懶漢式的區別

* 1,餓漢式是空間換時間,懶漢式是時間換空間

* 2,在多執行緒訪問時,餓漢式不會建立多個物件,而懶漢式有可能會建立多個物件

*/

/*

* 餓漢式*/

class singleton

//2,建立本類物件

private static singleton s = new singleton();

//3,對外提供公共的訪問方法

public static singleton getinstance()

}

/*

* 懶漢式,單例的延遲載入模式

*/class singleton

//2,宣告乙個引用

private static singleton s ;

//3,對外提供公共的訪問方法

public static singleton getinstance()

return s;

}}

/**

* 實際式 -- 實際的應用模式

*/class singleton

//2,宣告乙個引用

public static final singleton s = new singleton();

}

測試主類:

public class test_singleton

}

runtime通過檢視原始碼就是單例模式

1、單例模式應用場景: 關閉機器

public class demo2_runtime

}

應用場景2: 在指定時間安排指定任務

public class demo3_timer }}

class mytimertask extends timertask

}

C 設計模式 單例類

本文假設有乙個manager管理類,單例類懶漢 餓漢模式的實現,和單例類的多執行緒安全性,最後介紹meyers singleton寫法。當第一次要用單例類的時候,再產生例項。是一種典型的拖延 lazy 策略。類宣告 class manager 類定義 單例物件指標初始化為nullptr,防止指向了未...

類的設計模式(1) 單例模式

總結單例的一般實現比較簡單,下面是 和uml圖。由於建構函式是私有的,因此無法通過建構函式例項化,唯一的方法就是通過呼叫靜態函式getinstance。這裡只有乙個類,如何實現singleton類的子類呢?也就說singleton有很多子類,在一種應用中,只選擇其中的乙個。最容易就是在getinst...

Python中單例設計模式

class singleton object 注釋 instanc none def init self,name,age self.name name self.age age def new cls,name,age 建立乙個單例的物件 建立乙個 instance用來儲存第一次建立的物件引用 如...