首页 > Windows开发 > 详细

C# 单例模式

时间:2021-06-19 12:31:31      阅读:13      评论:0      收藏:0      [点我收藏+]

单例模式:一个类只能有一个实例对象。这样就决定了它有以下几个特点。

  1. 不能被继承,那得用sealed修饰类;
  2. 将构造函数隐藏起来,private构造函数;
  3. 公有静态方法创建单一实例;
  4. 为了保证多线程情况下的单一实例原则,还得加个线程锁;

简单代码实现如下:

public sealed class Singletion  
{  
    private static Singletion _singletion = null;  
  
    // 线程锁辅助对象  
    private static readonly object _lockObj = new object();  
  
    private Singletion()  
    {  
    }  
  
    public static Singletion Instance()  
    {  
        // 保证线程安全,多线程情况下只有一个对象实例  
        if (_singletion == null)  
        {  
            lock(_lockObj)  
            {  
                _singletion = new Singletion();  
            }  
        }  
  
        return _singletion;  
    }  
}  

参考:
设计模式笔记:单件模式(Singleton)

C# 单例模式

原文:https://www.cnblogs.com/huvjie/p/14902270.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!