餓漢單例與懶漢單例

2021-08-25 22:20:06 字數 882 閱讀 9268

//餓漢單例(執行緒安全)

public class mon

public static mon getinstance()

public static mon getinstance() {

if(instance == null) {

//此時還沒有例項化

instance = new mon();

return instance;

public void print() {

system.out.println("這是乙個懶漢單例");

public static void main(string args) {

mon lemon = null;//宣告物件

lemon = mon.getinstance();

lemon.print();

//懶漢單例(執行緒安全)

//1.在對getinstance() 進行上鎖synchronized,但是效率太低

//2.雙重檢查(靜態內部類方法),執行緒安全、延遲載入、效率較高

public class mon {

private mon() {

private static class sing {//內部類

private static final mon instance = new mon();

public static mon getinstance() {

return sing.instance;

public static void main(string args) {

mon mon = null;//宣告物件

mon = mon.getinstance();

懶漢單例餓漢單例

設計模式 單例 設計模式 23個設計模式 建立型行為型 結構型架構模式 戰略 單例 單態 如何能保證乙個類只出乙個物件?懶漢式 缺點 訪問速度慢 優點 使用才載入物件 synchronized 同步可以解決懶漢式問題 餓漢式 優點 訪問速度快 缺點 提前載入 下面說一下懶漢式和餓漢式的區別及優點 餓...

單例(懶漢式單例 餓漢式單例)

public class singleton private static singleton instance new singleton public static singleton getinstance public class singleton public static synchr...

懶漢餓漢單例模式

懶漢式單例類,在第一次呼叫時的時候例項化自己 public class singleton private static singleton single null 靜態工廠方法 public static singleton getinstance return single 執行緒安全的懶漢式單...