本篇文章為大家展示了深入淺析c#中的單例模式,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。
c#中的單例模式
單例模式是指在設(shè)計(jì)一個(gè)類時(shí),保證在運(yùn)行期間只有一個(gè)實(shí)例對象,因?yàn)檫^多相同的實(shí)例對象會占用內(nèi)存空間。
##舉個(gè)例子
1.聲明一個(gè)靜態(tài)的Class1類的變量來引用的對象。
2.創(chuàng)造私有的無參構(gòu)造方法,使外部無法調(diào)用這個(gè)類的構(gòu)造方法。
3.創(chuàng)建靜態(tài)的方法,創(chuàng)建此類的對象。
4.通過TempClass1 = new Class1();調(diào)用私有構(gòu)造方法創(chuàng)建該實(shí)例。
#單例模式的一些特點(diǎn)
1.在類的內(nèi)部創(chuàng)建一個(gè)該類的實(shí)例對象,并使用靜態(tài)變量TempClass1引用該對象,田于變量應(yīng)該禁止外界直接訪問,因此使用private修飾,聲明為私有成員。
2.類的構(gòu)造方法使用 private修飾,聲明為私有,這樣就不能在類的外部使用new關(guān)鍵字來創(chuàng)建實(shí)例對象。
3.為了 在類的外部能夠獲得類的實(shí)例對象,需要定義一個(gè)靜態(tài)方法Class1Method(),用于返回該類實(shí)例TempClass1。
證明Class1只有一個(gè)實(shí)例對象
也就是說這兩個(gè)變量是同時(shí)指向同一個(gè)對象的。
具體代碼
private static Class1 TempClass1; private Class1() { } public static Class1 Class1Method() { if (TempClass1 == null) { TempClass1 = new Class1(); } return TempClass1; }
網(wǎng)頁名稱:深入淺析c#中的單例模式-創(chuàng)新互聯(lián)
轉(zhuǎn)載注明:http://jinyejixie.com/article32/dpocpc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)、Google、品牌網(wǎng)站建設(shè)、服務(wù)器托管、自適應(yīng)網(wǎng)站、定制網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容