Singleton模式要求一個(gè)類有且僅有一個(gè)實(shí)例,并且提供了一個(gè)全局的訪問(wèn)點(diǎn)。這就提出了一個(gè)問(wèn)題:如何繞過(guò)常規(guī)的構(gòu)造器,提供一種機(jī)制來(lái)保證一個(gè)類只有一個(gè)實(shí)例?客戶程序在調(diào)用某一個(gè)類時(shí),它是不會(huì)考慮這個(gè) " /> 亚洲精品自拍偷拍,欧美a大片欧美片,亚洲精品99999

色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

.NET設(shè)計(jì)模式:?jiǎn)渭J剑⊿ingleton Pattern)

  概述
  Singleton模式要求一個(gè)類有且僅有一個(gè)實(shí)例,并且提供了一個(gè)全局的訪問(wèn)點(diǎn)。這就提出了一個(gè)問(wèn)題:如何繞過(guò)常規(guī)的構(gòu)造器,提供一種機(jī)制來(lái)保證一個(gè)類只有一個(gè)實(shí)例?客戶程序在調(diào)用某一個(gè)類時(shí),它是不會(huì)考慮這個(gè)類是否只能有一個(gè)實(shí)例等問(wèn)題的,所以,這應(yīng)該是類設(shè)計(jì)者的責(zé)任,而不是類使用者的責(zé)任。
  從另一個(gè)角度來(lái)說(shuō),Singleton模式其實(shí)也是一種職責(zé)型模式。因?yàn)槲覀儎?chuàng)建了一個(gè)對(duì)象,這個(gè)對(duì)象扮演了獨(dú)一無(wú)二的角色,在這個(gè)單獨(dú)的對(duì)象實(shí)例中,它集中了它所屬類的所有權(quán)力,同時(shí)它也肩負(fù)了行使這種權(quán)力的職責(zé)!

  意圖
  保證一個(gè)類僅有一個(gè)實(shí)例,并提供一個(gè)訪問(wèn)它的全局訪問(wèn)點(diǎn)。

  模型圖
  邏輯模型圖:

  物理模型圖:

  生活中的例子
  美國(guó)總統(tǒng)的職位是Singleton,美國(guó)憲法規(guī)定了總統(tǒng)的選舉,任期以及繼任的順序。這樣,在任何時(shí)刻只能由一個(gè)現(xiàn)任的總統(tǒng)。無(wú)論現(xiàn)任總統(tǒng)的身份為何,其頭銜"美利堅(jiān)合眾國(guó)總統(tǒng)"是訪問(wèn)這個(gè)職位的人的一個(gè)全局的訪問(wèn)點(diǎn)。

 

  以下是五種實(shí)現(xiàn)
  1.簡(jiǎn)單實(shí)現(xiàn)

public sealed class Singleton
{
static Singleton instance=null;

Singleton()
{
}

public static Singleton Instance
{
get
{
if (instance==null)
{
instance
= new Singleton();
}
return instance;
}
}
}

NET技術(shù).NET設(shè)計(jì)模式:?jiǎn)渭J剑⊿ingleton Pattern),轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 沙坪坝区| 翁源县| 威远县| 潮安县| 丁青县| 兴化市| 集贤县| 噶尔县| 绥德县| 云林县| 桐乡市| 左云县| 清流县| 庆阳市| 盐池县| 错那县| 黑河市| 吴旗县| 铜山县| 千阳县| 湘阴县| 长子县| 益阳市| 仁寿县| 冷水江市| 石楼县| 马山县| 浪卡子县| 灌阳县| 连州市| 日喀则市| 乌鲁木齐县| 霍城县| 五原县| 明光市| 桃园县| 澄迈县| 寿阳县| 华蓥市| 逊克县| 桂平市|