設計模式 單例模式之懶漢式 多執行緒

2021-08-02 02:20:01 字數 632 閱讀 2662

package cn.itcast_03;

/* * 單例模式:

* 餓漢式:類一載入就建立物件

* 懶漢式:用的時候,才去建立物件

* * 面試題:單例模式的思想是什麼?請寫乙個**體現。

* * 開發:餓漢式(是不會出問題的單例模式)

* 面試:懶漢式(可能會出問題的單例模式)

* 思想:

* a:懶載入(延遲載入),用的時候才去載入

* b:執行緒安全問題

* a:是否多執行緒環境 是

* b:是否有共享資料 是

* c:是否有多條語句操作共享資料 是

*/public class teacher

private static teacher t = null;

public synchronized static teacher getteacher()

return t; }}

package cn.itcast_03;

public class teacherdemo

}

多執行緒 單例模式之懶漢

1.懶漢 延遲載入 2.正確 3.效率還比較高 通過 1.volatile 的引入,目的解決 ins new 重排序帶來的問題 2.synchronized 的引入,目的是解決原子性問題 3.見方法注釋 public class lazysingleton3 乙個獲得 ins 的方法 public ...

設計模式之單例模式 2 懶漢式及其多執行緒問題

學習設計模式的日常demo 懶漢式 執行緒不安全 實現 public class lazysingleton01 class lazysingleton private static lazysingleton instance 提供靜態方法,當使用該方法時,才去建立例項物件 public stat...

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

public class singleton1 私有的構造方法 private singleton1 public class singleton2 return instance 私有構造方法 private singleton2 以上的懶漢式,為什麼要進行兩次判空呢?懶漢式單例模式涉及併發的問題...