兩種單例模式的寫法

2021-10-05 07:16:54 字數 592 閱讀 2153

一、單例模式構造方法一般是私有的,其他類不能直接呼叫構造方法

1.餓漢式單例

單例模式的成員變數和構造方法都是私有的

//當類被載入時建立物件,執行緒安全的,未使用就被建立可能會造成資源浪費

public class test

public static test getinstance()

}

2.懶漢式單例

//按需建立,但是多執行緒容易建立出多個物件

public class test

public static test getinstance()}}

return test;

}}

3. 第三種單例模式的寫法(也是懶漢式),利用類載入

public class test

//此處用內部類維護單例,jvm在類載入的時候是互斥的,可以保證執行緒安全性

private static class singletonfactory

public static test getinstance()

}

單例模式兩種寫法

單例模式 懶漢式單例 package com.b 單例模式 懶漢式單例 類的例項在第一次被訪問時才建立 author zhangli public class singletontest1 private static singletontest1 classinstance null 靜態工廠方法...

兩種單例模式

一。單例模式 有以下的特點 eg。每台計算機可以有若干通訊埠,系統應當集中管理這些通訊埠,以避免乙個通訊埠同時被兩個請求同時呼叫。為了避免不一致狀態 1 單例類只能有乙個例項。2 單例類必須自己建立自己的唯一例項。3 單例類必須給所有其他物件提供這一例項。1 懶漢式單例 singleton通過將構造...

面試題(單例模式兩種寫法)

第一種形式 餓漢式單例 public class singleton private static singleton instance new singleton public static singleton getinstance 第二種形式 懶漢式單例 public class single...