課程
/后端開發
/Java
/模式的秘密---單例模式
怎么創建的是同一個一個對象?
2018-03-08
源自:模式的秘密---單例模式 2-1
正在回答
您需要理解以下兩段代碼的區別:
//代碼1 Singleton?s1?=?new?Singleton(); Singleton?s2?=?new?Singleton(); //代碼2 Singleton?s1?=?Singleton.instance; Singleton?s2?=?Singleton.instance;
在代碼1中,在沒有實現“單例模式”的情況下,是實實在在的分別創建了兩個對象s1和s2。所有這里的s1和s2肯定是不同的。
而已經實現了“單例模式”之后,唯一的對象instance在Singleton類中已經創建。在代碼2中,沒有創建任何新的對象,s1和s2都只是引用了Singleton中的instance而已。所有這里的s1和s2肯定是相同的。
希望我的回答能給你幫助。如果您還有任何疑惑,可以私信我。
望采納,謝謝您。
static? ? ?這個關鍵字
舉報
單例模式是在Java中最重要模式之一,讓我們揭開單例模式神秘面紗
1 回答為什么我寫的一模一樣可還是不對?
4 回答單例模式為什么不直接訪問那個靜態對象
2 回答在一個類中定義本身的實例對象時為什么要加static?
3 回答老師說餓漢模式是線程安全的,為什么沒有用synchronized 關鍵詞修飾?
2 回答這個的用處是什么
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2018-07-20
您需要理解以下兩段代碼的區別:
在代碼1中,在沒有實現“單例模式”的情況下,是實實在在的分別創建了兩個對象s1和s2。所有這里的s1和s2肯定是不同的。
而已經實現了“單例模式”之后,唯一的對象instance在Singleton類中已經創建。在代碼2中,沒有創建任何新的對象,s1和s2都只是引用了Singleton中的instance而已。所有這里的s1和s2肯定是相同的。
希望我的回答能給你幫助。如果您還有任何疑惑,可以私信我。
望采納,謝謝您。
2018-03-09
static? ? ?這個關鍵字