码迷,mamicode.com
首页 > 其他好文 > 详细

单例模式

时间:2020-01-21 10:44:37      阅读:57      评论:0      收藏:0      [点我收藏+]

标签:name   无法   obj   必须   span   info   public   ret   这一   

单例模式,是最简单的设计模式,它的思想就是保证某一个类只能有一个实例

  • 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();

        }

 

技术图片

单例模式

标签:name   无法   obj   必须   span   info   public   ret   这一   

原文地址:https://www.cnblogs.com/ningxinjie/p/12220741.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!