单例模式

1.静态私有字段;
2.静态共有属性(get);
3.私有构造函数;
通过这种方式创建全局唯一的对象。(注意多线程的时候加锁)
eg:

class Single
{
//1....
private static Single single;     





//2....
public static Sing GetSingle
{
  get
  {
    if(single==null)
    {
    single=new Single();
    }
  return single;
  }
}

//3....
private Single()
{

}

}

多线程单例:

image.png

c#中readonly单例:

image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容