C#基础:单例设计模式

单例模式就是保证在整个应用程序的生命周期中,在任何时刻,被指定的类只有一个实例,并为客户程序提供一个获取该实例的全局访问点

  1.     public class SingleTon
  2.     {
  3.         public string name;
  4.         //1.构造方法必须私有化
  5.         private SingleTon ()
  6.         {
  7.         }
  8.         //2.定义静态实例
  9.         private static SingleTon instance;
  10.         //3.静态构造函数中对静态实例进行初始化
  11.         static SingleTon(){
  12.             instance = new SingleTon ();
  13.         }
  14.         //4.对外提供获取该实例的接口
  15.         public static SingleTon Instance{
  16.             get{ 
  17.                 if (instance == null) {
  18.                     instance = new SingleTon ();
  19.                 }
  20.                 return instance;
  21.             }
  22.         }
  23.     }

1.该Singleton的构造函数必须是私有的,以保证客户程序不会通过new()操作产生一个实例,达到实现单例的目的;

2.因为静态变量的生命周期跟整个应用程序的生命周期是一样的,所以可以定义一个私有的静态全局变量instance来保存该类的唯一实例;

3.必须提供一个全局函数访问获得该实例,并且在该函数提供控制实例数量的功能,即通过if语句判断instance是否已被实例化,如果没有则可以同new()创建一个实例;否则,直接向客户返回一个实例。

猜你喜欢

转载自blog.csdn.net/QQhelphelp/article/details/83067407
今日推荐