1.单例类的实现
1.单例的作用
- 1、单例类只能有一个实例。
- 2、单例类必须自己创建自己的唯一实例。
- 3、单例类必须给所有其他对象提供这一实例。
2.单例的一般写法
public class Mgr
{
private static Mgr inst;
public static Mgr GetInst
{
get
{
if (inst == null)
{
inst = new Mgr();
}
return inst;
}
}
}
3.通用的单例写法, 每一个单例类的实现都是类似的,上面的代码也是重复的,新的单例类可以通过继承下面的类可以减少重复代码
public class BaseMgr<T> where T : new()
{
private static T inst;
public static T GetInst
{
get
{
if (inst == null)
{
inst = new T();
}
return inst;
}
}
}
新增的单例类写成以下形式即可
public class XXXMgr:BaseMgr<XXXMgr>{
}