public class Simple{
public static Simple sSimple;
private Simple(){
//这里把类构造器设为私有方法
}
public static Simple getInstance(){
if(sSimple == null)
sSimple = new Simple();
return sSimple;
}
}
Unity3D和java创建的类单例模式其实相同的,首先判断存在与否,不存在则创建,我们现在先看看java中一般单例的创建情况吧:
然而在unity3D里边可就不能单纯的判断是否为null了,因为其中的public对象我们是通过拖拽绑定的,这些对象中star的时候就进行了初始化之类的操作,或者说在次之前就操作了,所以我们如果判断null而进行重新创建的话就丢失了那些绑定好的对象,怎么写呢?截个图吧:
这段方法中通过寻找游戏中是否存在我们需要的这个单例来取代null的判断
其实很简单 不是么?