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

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

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

2019-11-09 15:41:05
字體:
供稿:網(wǎng)友

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

四點要求:唯一實例,多線程并發(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ā)表
主站蜘蛛池模板: 永仁县| 潮州市| 太原市| 清镇市| 台北县| 盐边县| 贵港市| 安阳县| 玉屏| 泉州市| 庆城县| 谷城县| 清水县| 晋宁县| 广东省| 平阴县| 鲁山县| 沁源县| 延吉市| 温宿县| 安仁县| 乌兰浩特市| 额敏县| 屯昌县| 固安县| 白玉县| 阿拉尔市| 许昌市| 巴林右旗| 刚察县| 霍城县| 惠水县| 滦平县| 滨海县| 翁牛特旗| 米林县| 泉州市| 舒城县| 洪雅县| 库尔勒市| 东台市|