小小小菜

导航

单例模式(singleton)

Singleton

定义一个私有变量instance;私有构造方法Singleton()和方法GetInstance();

原理:1 私有构造方法Singleton()可以阻止在其他地方采用new()的方式实例化Singleton类,因为构造方法是私有的,所以只能在类中访问。2 方法GetInstance()是静态公共方法,可以以Singleton.GetInstance()的方式访问。在该方法内部可以new()一个Singleton实例,并将new的实例赋给变量Singleton instance,并返回instance。这样就能保证在应用程序中只存在一个这个类的实例。

public class Singleton
{
  
private Singleton()//必须是私有的,防止在类外部实例化

  {
  }

  
private static Singleton instance;//必须是静态的
  public static Singleton GetInstance()//静态是为了使用类进行访问,而不是通过类的实例访问
  {

    if(instance == null)

    {
      intance 
= new Singleton();
    }
    
return intance;
  }
}

posted on 2010-01-13 09:29  小小小菜  阅读(118)  评论(0编辑  收藏  举报