您的位置:首页 > 编程语言 > C#

C#设计模式:Singleton模式

2007-12-30 12:01 246 查看
如何保证一个类只能有一个实例存在?

在多线程情况下如何解决?

using System;

using System.Collections.Generic;

using System.Text;

namespace Singleton

//多线程版本的Singleton

namespace SingletonMultiThread

//经典的Singleton实现:仅仅适合无参构造器对象(可用属性实现扩展)

namespace classicalSingleton

{

sealed class Singleton

{

private Singleton() { }

//内联初始化,后面的new是个静态构造器

public static readonly Singleton Instance = new Singleton();

}

class Program

{

static void Main(string[] args)

{

Singleton s1 = Singleton.Instance;

Singleton s2 = Singleton.Instance;

if (object.ReferenceEquals(s1, s2))

Console.WriteLine("两个对象是相同的实例。");

else

Console.WriteLine("两个对象非相同的实例。");

}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: