摘要:如果明確要實(shí)現(xiàn)懶加載效果時(shí),使用第種靜態(tài)內(nèi)部類方式。如果涉及到反序列化創(chuàng)建對象時(shí),可以使用第種枚舉方式。懶漢式,線程不安全懶漢式,線程安全雙重檢查鎖,懶漢式,線程安全餓漢式,線程安全靜態(tài)內(nèi)部類,懶漢式,線程安全枚舉類,懶漢式,線程安全
可能總結(jié)的會有問題,我會一點(diǎn)點(diǎn)完善的...
結(jié)論:建議使用第 4 種餓漢方式。如果明確要實(shí)現(xiàn)懶加載效果時(shí),使用第 5 種靜態(tài)內(nèi)部類方式。如果涉及到反序列化創(chuàng)建對象時(shí),可以使用第 6 種枚舉方式。
1 懶漢式,線程不安全public class Singleton { private static Singleton instance=null; public static Singleton getInstance(){ if(instance==null){ instance=new Singleton(); } return instance; } private Singleton(){} }2 懶漢式,線程安全
public class Singleton { private static Singleton instance=null; public static synchronized Singleton getInstance(){ if(instance==null){ instance=new Singleton(); } return instance; } private Singleton(){} }3 雙重檢查鎖,懶漢式,線程安全
public class Singleton { private volatile static Singleton instance=null; public static Singleton getInstance(){ if(instance==null){ synchronized(Singleton.class){ if(instance==null){ instance=new Singleton(); } } } return instance; } private Singleton(){} }4 餓漢式,線程安全
public class Singleton { private static Singleton instance=new Singleton(); public static Singleton getInstance(){ return instance; } private Singleton(){} }5 靜態(tài)內(nèi)部類,懶漢式,線程安全
public class Singleton { private static class SingletonHolder{ private final static Singleton instance=new Singleton(); } public static Singleton getInstance(){ return SingletonHolder.instance; } private Singleton(){} }6 枚舉類,懶漢式,線程安全
public enum SingletonEnum{ INSTANCE; }
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/72146.html
摘要:一主存儲器與工作存儲器內(nèi)存模型分為主存儲器和工作存儲器兩種。工作存儲器每個(gè)線程各自獨(dú)立所擁有的作業(yè)區(qū),在中,存有中的部分拷貝,稱之為工作拷貝。注意線程欲退出時(shí),不會執(zhí)行工作存儲器的釋放操作。 一、主存儲器與工作存儲器 Java內(nèi)存模型(memory model)分為主存儲器(main memory)和工作存儲器(working memory)兩種。 主存儲器(main memory)...
摘要:單例模式的優(yōu)缺點(diǎn)優(yōu)點(diǎn)單例模式在內(nèi)存中只有一個(gè)實(shí)例,減少了內(nèi)存開支,尤其是頻繁的創(chuàng)建和銷毀實(shí)例。單例模式對測試不利。單例模式與單一職責(zé)原則有沖突,一個(gè)類應(yīng)該只實(shí)現(xiàn)一個(gè)邏輯,而不用關(guān)心它是否是單例的。資源源碼參考設(shè)計(jì)模式之禪原文地址:xeblog.cn/articles/16 單例模式的定義 確保某一個(gè)類只有一個(gè)實(shí)例,而且自行實(shí)例化并向整個(gè)系統(tǒng)提供這個(gè)實(shí)例。 UML類圖 showImg(ht...
摘要:單例模式的優(yōu)缺點(diǎn)優(yōu)點(diǎn)單例模式在內(nèi)存中只有一個(gè)實(shí)例,減少了內(nèi)存開支,尤其是頻繁的創(chuàng)建和銷毀實(shí)例。單例模式對測試不利。單例模式與單一職責(zé)原則有沖突,一個(gè)類應(yīng)該只實(shí)現(xiàn)一個(gè)邏輯,而不用關(guān)心它是否是單例的。資源源碼參考設(shè)計(jì)模式之禪原文地址:xeblog.cn/articles/16 單例模式的定義 確保某一個(gè)類只有一個(gè)實(shí)例,而且自行實(shí)例化并向整個(gè)系統(tǒng)提供這個(gè)實(shí)例。 UML類圖 showImg(ht...
摘要:單例模式的優(yōu)缺點(diǎn)優(yōu)點(diǎn)單例模式在內(nèi)存中只有一個(gè)實(shí)例,減少了內(nèi)存開支,尤其是頻繁的創(chuàng)建和銷毀實(shí)例。單例模式對測試不利。單例模式與單一職責(zé)原則有沖突,一個(gè)類應(yīng)該只實(shí)現(xiàn)一個(gè)邏輯,而不用關(guān)心它是否是單例的。資源源碼參考設(shè)計(jì)模式之禪原文地址:xeblog.cn/articles/16 單例模式的定義 確保某一個(gè)類只有一個(gè)實(shí)例,而且自行實(shí)例化并向整個(gè)系統(tǒng)提供這個(gè)實(shí)例。 UML類圖 showImg(ht...
摘要:讓你收獲滿滿碼個(gè)蛋從年月日推送第篇文章一年過去了已累積推文近篇文章,本文為年度精選,共計(jì)篇,按照類別整理便于讀者主題閱讀。本篇文章是今年的最后一篇技術(shù)文章,為了讓大家在家也能好好學(xué)習(xí),特此花了幾個(gè)小時(shí)整理了這些文章。 showImg(https://segmentfault.com/img/remote/1460000013241596); 讓你收獲滿滿! 碼個(gè)蛋從2017年02月20...
閱讀 1820·2021-11-23 09:51
閱讀 927·2021-10-08 10:05
閱讀 3421·2021-09-26 09:55
閱讀 1030·2021-09-22 15:21
閱讀 1626·2021-09-09 09:33
閱讀 1236·2019-08-30 15:56
閱讀 1275·2019-08-30 15:55
閱讀 958·2019-08-30 13:19