国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

設(shè)計模式一:單例模式

2019-11-09 16:51:27
字體:
供稿:網(wǎng)友

單例模式有以下特點(diǎn): 1、單例類只能有一個實例。 2、單例類必須自己創(chuàng)建自己的唯一實例。 3、單例類必須給所有其他對象提供這一實例。

四點(diǎn)要求:唯一實例,多線程并發(fā)訪問,效率性能,懶加載(Lazy Load,在需要的時候才被構(gòu)造) 1、懶漢模式,線程不安全

public class SingletonKerriganA { /** * 單例對象實例 */ PRivate static SingletonKerriganA instance = null; public static SingletonKerriganA getInstance() { if (instance == null) { instance = new SingletonKerriganA(); } return instance; }}

2、懶漢模式,線程安全,但是效率低

public class SingletonKerriganB { /** * 單例對象實例 */ private static SingletonKerriganB instance = null; public synchronized static SingletonKerriganB getInstance() { if (instance == null) { instance = new SingletonKerriganB(); } return instance; }}

3、餓漢模式

public class SingletonKerriganE { /** * 單例對象實例 */ private static SingletonKerriganE instance = new SingletonKerriganE(); public static SingletonKerriganE getInstance() { return instance; }}

4、靜態(tài)內(nèi)部類。懶漢模式,線程安全,性能好,應(yīng)用多。

public class SingletonKerriganF { private static class SingletonHolder { /** * 單例對象實例 */ static final SingletonKerriganF INSTANCE = new SingletonKerriganF(); } public static SingletonKerriganF getInstance() { return SingletonHolder.INSTANCE; }}

實際開發(fā)中,我們應(yīng)該記住:沒有最好的單例模式,只有最合適的單例模式。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 波密县| 富民县| 泗阳县| 康保县| 星座| 邢台县| 富蕴县| 曲阜市| 富裕县| 柳河县| 南康市| 石台县| 柳河县| 家居| 衡山县| 调兵山市| 临桂县| 乐安县| 宜宾市| 湖州市| 饶阳县| 房产| 景宁| 宁陵县| 友谊县| 沾化县| 宁蒗| 辽宁省| 巧家县| 彭阳县| 疏附县| 武川县| 平遥县| 陆良县| 福建省| 从化市| 石柱| 德清县| 集安市| 会昌县| 商水县|