C#声明一个类、怎么保证这个类只能有一个实例化对象?
答案:5 悬赏:50 手机版
解决时间 2021-03-20 13:20
- 提问者网友:浮克旳回音
- 2021-03-19 13:47
C#声明一个类、怎么保证这个类只能有一个实例化对象?
最佳答案
- 五星知识达人网友:woshuo
- 2021-03-19 15:16
可以用单例模式.
public class Singleton
{
private static Singleton instance;
private static readonly object obj = new object();
private Singleton()
{
}
//这里实例化
public static Singleton GetInstance()
{
if (instance == null)
{
lock (obj)//加锁
{
if (instance == null) //双重锁
instance = new Singleton();
}
}
return instance;
}
}
public class Singleton
{
private static Singleton instance;
private static readonly object obj = new object();
private Singleton()
{
}
//这里实例化
public static Singleton GetInstance()
{
if (instance == null)
{
lock (obj)//加锁
{
if (instance == null) //双重锁
instance = new Singleton();
}
}
return instance;
}
}
全部回答
- 1楼网友:污到你湿
- 2021-03-19 16:48
等额头可能
- 2楼网友:笑迎怀羞
- 2021-03-19 16:41
这个貌似不能吧,只能不给实例化的。
- 3楼网友:持酒劝斜阳
- 2021-03-19 16:00
如果是普通类的话,使用全局变量对该类做一个引用计数,在类的构造中+1,如果遇到该数字已大于1,则抛出异常,在析构中-1。
- 4楼网友:雾月
- 2021-03-19 15:34
设计模式里面有一种可以实现。单例模式。具体问百度
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯