单例模式,解决在使用对象实例时每次都需要声明的麻烦,其声明方式如下:
1 ///2 /// 实例对象 3 /// 4 public class Singleton 5 { 6 static Singleton _install = null; 7 8 //声明一个静态对象,解决多线程同时调用单例对象 9 private static object lockObj = new object();10 11 ///12 /// 构造函数声明为私有的,防止外部对象通过构造函数声明对象实例13 /// 14 private Singleton() { }15 16 ///17 /// 单例对象实例18 /// 19 public static Singleton Install20 {21 get22 {23 //判断单例对象是否被声明24 if(_install==null)25 {26 //如果没有被声明则加锁声明实例对象,加锁防止多线程同时调用27 lock(lockObj)28 {29 //再次判断是否已被声明,若没有则声明实例30 if (_install == null)31 _install = new Singleton();32 }33 }34 35 return _install;36 }37 }38 }