单例模式,是最简单的设计模式,它的思想就是保证某一个类只能有一个实例
- 1、单例类只能有一个实例。
- 2、单例类必须自己创建自己的唯一实例。
- 3、单例类必须给所有其他对象提供这一实例。
意图:保证一个类仅有一个实例,并提供一个访问它的全局访问点。
class SingleObject { private SingleObject() { }//设置构造函数为私有,这样就无法通过外部实例化 private static SingleObject _singleobject; private static readonly object obj = new object(); public static SingleObject getInstance() { lock (obj)//如果存在多线程访问,加锁 { if (_singleobject == null) { _singleobject = new SingleObject(); } return _singleobject; } } }
static void Main(string[] args) { SingleObject.getInstance().Name = "hello Single Pattern"; Console.WriteLine(SingleObject.getInstance().Name); Console.ReadKey(); }