Java靜態內部類實現單例過程
阿新 • • 發佈:2020-01-07
這篇文章主要介紹了Java靜態內部類實現單例過程,文中通過示例程式碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
列舉實現單例
執行緒安全,呼叫效率高,不能延時載入,可以天然的防止反射和反序列化呼叫
public enum SingletonFactory { //列舉元素本身就是單例 INSTANCE; //新增自己需要的操作 public SingletonObject getInstance(){ return new SingletonObject(); } }
靜態內部類實現單例
執行緒安全,呼叫效率高,可以延時載入,使用內部類的好處是,靜態內部類不會在單例載入時就載入,而是在呼叫getInstance()方法時才進行載入,達到了類似懶漢模式的效果,而這種方法又是執行緒安全的.
public class SingletonFactory { public static SingletonObj getInstance() { return SingletonObj.instance.context; } private static class instance { private static final SingletonObj context = new SingletonObj(); } }
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。