您好,登錄后才能下訂單哦!
設(shè)計模式之單例模式-單例模式的幾種實現(xiàn)方式及小案例
本文來源:凱哥Java(wx:kaigejava)
單例模式有幾種?餓漢式、懶漢式。這兩種是最常見的。還有幾種是對其擴展的。具體如下:
我們可以從上圖看到,共有六種方式。
其中在懶漢式基礎(chǔ)上擴展的有兩種。即:加鎖的懶漢式及雙重判斷加鎖的懶漢式
還有一種是使用內(nèi)部類實現(xiàn)的。即:內(nèi)部靜態(tài)類的
最后一種是比較少見的。使用枚舉的。
我們來看看每種方式代碼都怎么寫。
聯(lián)系凱哥--》公眾號:凱哥Java(kaigejava)
凱哥個人博客:www.kaigejava.com
懶漢式:
我們來看看懶漢式優(yōu)缺點:
餓漢式:
餓漢式的優(yōu)缺點及適用場景:
加鎖的懶漢式:
再來看看加鎖懶漢式的由來:
雙重判斷加鎖的懶漢式:
有了加鎖的懶漢為什么還會有加鎖雙重判斷的呢?這種由什么優(yōu)缺點呢?請看下圖:
內(nèi)部靜態(tài)類是實現(xiàn)的懶漢式:
這種模式的有缺:
使用枚舉:
優(yōu)點缺點:
我們使用單例模式做個小案例。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。