1. 程式人生 > >從零開始學Java之單例模式:懶漢模式和飽漢模式

從零開始學Java之單例模式:懶漢模式和飽漢模式

單例模式:單例模式是一種常用的軟體設計模式。在它的核心結構中只包含一個被稱為單例類的特殊類。通過單例模式可以保證系統中一個類只有一個例項而且該例項易於外界訪問,從而方便對例項個數的控制並節約系統資源。如果希望在系統中某個類的物件只能存在一個,單例模式是最好的解決方案。

   懶漢模式:保證物件只存在一個,你呼叫我就給你用,你呼叫我就不給

<span style="font-size:18px;">public class SingleDemo {
	
	private static SingleDemo sd = null;
	private SingleDemo(){
		
	}
	public synchronized static SingleDemo getIntance(){ //synchronized 同步,保證執行緒安全
		                                                //
		if(sd == null){
			sd = new SingleDemo();
		}
		return sd;
	}

	public static void main(String[] args){
		
		SingleDemo sd = SingleDemo.getIntance();
		
	}
}</span>


     飽漢模式:直接new出來,不管你用不用都給你

public class SingleDemo1 {

	private static SingleDemo1 sd = new SingleDemo1();  //直接new出來
	private SingleDemo1(){
		
	}
	public synchronized static SingleDemo1 getIntance(){ //synchronized 同步,保證執行緒安全
		                                                //相當於加了一把鎖,
		return sd;        //不管你用不用,反正都給你 new 出來了 
	}

	public static void main(String[] args){
		
		SingleDemo sd = SingleDemo.getIntance();
		
		
	}
	
}

相關推薦

開始Java模式:懶漢模式模式

單例模式:單例模式是一種常用的軟體設計模式。在它的核心結構中只包含一個被稱為單例類的特殊類。通過單例模式可以保證系統中一個類只有一個例項而且該例項易於外界訪問,從而方便對例項個數的控制並節約系統資源。

開始Java五種內部類將執行緒隱藏類中

1.使用普通內部類繼承Thread類 <code class="hljs java has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box;

開始Java出入門衛管理(二)

    這個系統包含了四塊,第一塊就是人員管理,經理分配三位分別有“ABC"許可權的人,分別管理請假申請,請假審批,門衛登記管理。同時不屬於本公司的內部人員,如別的公司的人員如果想到本公司訪問,也是先通過這”ABC“許可權的三個人代為寫來訪申請,來訪審批,來訪門衛登記管理

開始Java 編寫簡單的工程

筆者本人從最初開始接觸C語言、C++、VC++、彙編到後來接觸PHP以及Java,在這些語言的使用過程中深刻感受到這些語言都是相同的編寫思路,程式碼編寫的方式也是大同小異,目前認為Java語言的亮點是package以及反射機制。 package不僅提供

開始 Web jQuery(二)獲取操作元素的屬性

eight images idt 隱藏 lis 屬性 ner master lin 大家好,這裏是「 從零開始學 Web 系列教程 」,並在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公眾號:Web前端之巔

開始 Web HTML5(二)表,多媒體新增內容,新增獲取操作元素,自定義屬性

器) user 對比 style 按鈕 ont mp3 url -- 大家好,這裏是「 從零開始學 Web 系列教程 」,並在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公眾號:Web前端之巔 博客園:ht

開始 Web Vue.js(三)Vue實的生命周期

報錯 web 前端 cnblogs 前端 eth code vue 公眾 des 大家好,這裏是「 從零開始學 Web 系列教程 」,並在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公眾號:Web前端之巔

開始 Web HTML(三)表

大家好,這裡是「 Daotin的夢囈 」從零開始學 Web 系列教程。此文首發於「 Daotin的夢囈 」公眾號,歡迎大家訂閱關注。在這裡我會從 Web 前端零基礎開始,一步步學習 Web 相關的知識點,期間也會分享一些好玩的專案。現在就讓我們一起進入 Web 前端學習的冒險之旅吧! 一、表格 1

如何開始Java編程

零基礎 簡單的 核心技術 為什麽 而且 log 更多 課程 比較 Java語言的學習開始,很多同學不知道從哪入手?如果你也想知道如何從零開始學Java?怎樣學Java最有效? 雖然Java面象對象很多東西都是被封裝好的直接用,相對其他語言沒那麽復雜,但是學的東西也沒有那麽的

開始Swift》學習筆記(Day67)——Cocoa Touch設計模式及應用MVC模式

table control sdn rate term targe rac uitabbar bsp 原創文章,歡迎轉載。轉載請註明:關東升的博客 MVC(Model-View-Controller,模型-視圖-控制器)模式是相當古老的設計模式之中的一個,它最早出如今

開始 Web DOM(一)DOM的概念,對標簽操作

關註 1.5 pan 什麽 tin p標簽 nod text == 大家好,這裏是「 Daotin的夢囈 」從零開始學 Web 系列教程。此文首發於「 Daotin的夢囈 」公眾號,歡迎大家訂閱關註。在這裏我會從 Web 前端零基礎開始,一步步學習 Web 相關的知識點,

開始 Web DOM(四)節點

def clas scrip while p標簽 設置 ner 操作 text 大家好,這裏是「 Daotin的夢囈 」從零開始學 Web 系列教程。此文首發於「 Daotin的夢囈 」公眾號,歡迎大家訂閱關註。在這裏我會從 Web 前端零基礎開始,一步步學習 Web 相

開始 Web BOM(三)offset,scroll,變速動畫函數

樣式 清理 java mar dde sof mov har width 大家好,這裏是「 從零開始學 Web 系列教程 」,並在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公眾號:Web前端之巔 博客園:

開始 Web JS 高級(二)原型鏈,原型的繼承

console 多少 程序 cat hub inf 當前 構造函數 調用 大家好,這裏是「 從零開始學 Web 系列教程 」,並在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公眾號:Web前端之巔 博客園:

開始 Web JS 高級(三)apply與call,bind,閉包沙箱

master 操作 console 概念 釋放 分享圖片 成功 num 命名沖突 大家好,這裏是「 從零開始學 Web 系列教程 」,並在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公眾號:Web前端之巔

開始 Web jQuery(六)為元素綁定多個相同事件,解綁事件

png 好用 添加 方式 執行 存在 區別 也會 地址 大家好,這裏是「 從零開始學 Web 系列教程 」,並在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公眾號:Web前端之巔 博客園:http://ww

開始 Web jQuery(七)事件冒泡,事件參數對象,鏈式編程原理

eval uri turn 定位 return 也會 否則 ont sele 大家好,這裏是「 從零開始學 Web 系列教程 」,並在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公眾號:Web前端之巔 博客

開始 Web Ajax服務器相關概念OA現金盤平臺制作

臺電 如何 lamp ajax mysql 個人 客戶端 ipc httpd 一、服務器和客戶端服務器和客戶端都是電腦OA現金盤平臺制作 QQ2952777280【話仙源碼論壇】http://hxforum.com 【木瓜源碼論壇】http://papayabbs.com

開始 Web Ajax(三)Ajax 概述,快速上手

lan 技術分享 php 概述 由於 val asc logs 更新 大家好,這裏是「 從零開始學 Web 系列教程 」,並在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公眾號:Web前端之巔 博客園:ht

開始 Web Ajax(五)同步異步請求,數據格式

遊記 document 空閑 name center 20px 實現 resp 也會 大家好,這裏是「 從零開始學 Web 系列教程 」,並在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公眾號:Web前端之