创建一个单件类 C#高手帮帮忙

来源:百度知道 编辑:UC知道 时间:2024/05/20 13:56:59
题目好像是这样的
编写一个类,要求类和子类只能创建一个实例

这是23种设计模式中的单例模式
class Test
{
Test ts;
//将构造方法设为似有防止别人初始化
private Test()
{
}
Public static Test GetTest()
{
//如果对象不存在则初始化
if(ts==null)
{
ts=new Test();
return ts;
}
//对象存在的话还是返回原来的对象
return ts;
}

}

//我再这里要用了
Test tt=GetTest();

在构造方法里面可以编写代码实现

就是设计模式中的单一模式啊 推荐你一本书《大话设计模式》23种都有介绍 通俗易懂!

也叫单件模式,只允许有一个实例。要有一个静态的构造 函数

可以用静态初始化的方法 这个比较简单
public class Singleton
{
private static Singleton instance = new Singleton();
public staitc Singleton Instance
{
get{return instance;}
}
}

还有很多种方式
如果不考虑多线程的话 比较简单
public class Singleton
{
private Singleton instance=null;
pulbic Singleton Instance
{
get
{
if(instance==null)
instance=new Singleton();
return instance;