Singleton模式要求一個類有且僅有一個實例,并且提供了一個全局的訪問點。這就提出了一個問題:如何繞過常規的構造器,提供一種機制來保證一個類只有一個實例?客戶程序在調用某一個類時,它是不會考慮這個 " /> 在线三级中文,亚洲人体一区,99久久国产综合精品女不卡

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

.NET設計模式:單件模式(Singleton Pattern)

  概述
  Singleton模式要求一個類有且僅有一個實例,并且提供了一個全局的訪問點。這就提出了一個問題:如何繞過常規的構造器,提供一種機制來保證一個類只有一個實例?客戶程序在調用某一個類時,它是不會考慮這個類是否只能有一個實例等問題的,所以,這應該是類設計者的責任,而不是類使用者的責任。
  從另一個角度來說,Singleton模式其實也是一種職責型模式。因為我們創建了一個對象,這個對象扮演了獨一無二的角色,在這個單獨的對象實例中,它集中了它所屬類的所有權力,同時它也肩負了行使這種權力的職責!

  意圖
  保證一個類僅有一個實例,并提供一個訪問它的全局訪問點。

  模型圖
  邏輯模型圖:

  物理模型圖:

  生活中的例子
  美國總統的職位是Singleton,美國憲法規定了總統的選舉,任期以及繼任的順序。這樣,在任何時刻只能由一個現任的總統。無論現任總統的身份為何,其頭銜"美利堅合眾國總統"是訪問這個職位的人的一個全局的訪問點。

 

  以下是五種實現
  1.簡單實現

public sealed class Singleton
{
static Singleton instance=null;

Singleton()
{
}

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

NET技術.NET設計模式:單件模式(Singleton Pattern),轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 白河县| 三穗县| 洪江市| 温州市| 象州县| 无棣县| 吉首市| 霍邱县| 桦川县| 右玉县| 平原县| 微山县| 宜兰市| 辽源市| 应城市| 灌南县| 石台县| 云梦县| 荥阳市| 通河县| 赤城县| 吴旗县| 韶山市| 松原市| 开远市| 如东县| 新竹县| 随州市| 沁源县| 连江县| 林口县| 乐都县| 奉节县| 灵丘县| 湛江市| 屏山县| 施甸县| 怀化市| 兴国县| 枝江市| 金阳县|