天天看點

反射與單例設計模式|學習筆記

開發者學堂課程【Java 進階程式設計:反射與單例設計模式】學習筆記,與課程緊密聯系,讓使用者快速學習知識。

課程位址:

https://developer.aliyun.com/learning/course/20/detail/379

反射與單例設計模式

内容簡介:

1、範例:觀察懶漢式單例設計模武的問題.

2、修改 getInstance() 方法進行同步處理

3、在 Java 中使用到單例設計模式

1.觀察懶漢式單例設計模武的問題.

單例設計模式的核心本質在于:

類内部的構造方法私有化,在類的外部産生類産生執行個體化對象之後通過 static 方法擷取執行個體化對性行類中的結構調用,單例設計模式一共有兩類:懶漢式、餓漢式。

範例:

反射與單例設計模式|學習筆記

2.修改 getInstance() 方法進行同步處理

單例設計模式的最大特點是在整體的運作過程之中隻允許産生一個執行個體化對象,當有了若幹線程之後目前的程式就可以産生多個執行個體化對象,、此時就不是單例設計模式。

問題造成的關鍵在于代碼本身出現了不同步的情況,而要想解決的關鍵核心在于需要進行同步處理,使用 synchronized 類

反射與單例設計模式|學習筆記

此時同步效率低,因為整體代碼裡實際隻有一部分進行同步處理, instance 對象的執行個體化處理部分

範例:更合理的同步處理

反射與單例設計模式|學習筆記

3.在 Java 中使用到單例設計模式

 Runtime 類 Class 類、Pattern 類、Spring 架構