c#单例(Singleton)模式实现

sealed class Singleton
{
   private Singleton();
   public static readonly Singleton Instance=new Singleton();
}

Singleton类被声明为sealed,以此保证它自己不会被继承,其次没有了Instance的方法,将原来_instance成员变量变成public readonly,并在声明时被初始化。通过这些改变,

我们确实得到了Singleton的模式,原因是在JIT的处理过程中,如果类中的static属性被任何方法使用时,.NET Framework将对这个属性进行初始化,于是在初始化Instance属性

的同时Singleton类实例得以创建和装载。而私有的构造函数和readonly(只读)保证了Singleton不会被再次实例化,这正是Singleton设计模式的意图。

http://blog.jobbole.com/78059/

posted @ 2016-08-01 17:27  paulhe  阅读(374)  评论(0编辑  收藏  举报
friendster counter