单例模式(Singleton):保证一个类仅有一个实例,并提供一个访问它的全局访问点。
这个模式在游戏开发中特别常用,比如说一些只可能存在一个实例对象的类中,而为了快捷访问它就可以用这个模式,比如账号登录一个帐号只能有唯一的登录。
public class Singleton{
private static Singleton instance=null;
public static Singleton Instance
{
get
{
if(instance==null)
instance=new SingletonClass();
return instance;
}
}
private Singleton(){}
}
在Unity中还有单例脚本和单例类,单例类就是这里的单例模式,而单利脚本则是是需要绑定在游戏对象身上的继承自MonoBehavior的脚本。
单例模式的实现不止这一种方式,在这里我没有考虑多线程,在多线程下要考虑线程安全的问题。
注意单例模式并不是说一个类只能只有一个实例,而是对唯一实例的受控访问。
参考书籍:《大话设计模式》
参考网站:将计算机思维故事化——之设计模式单例模式