单例模式,简单说就是类的实例在内存中只存在一份
单例模式有时又叫单态模式或者原子模式,不管名称怎么叫,表达的意思是一样的
总结起来有二种:
第一种: 写一个脚本,然后将这个脚本拖放到场景中某个对象身上,千万注意只拖一次到场景中,我们知道,一旦将脚本托给场景中某个对象,就变成脚本组件,组件就是对象,因此这个类的实例在场景中有且只有一个,因此从某种意义上讲场该脚本组件也就是单例的
访问此种单例的方式有两种
1 可以通过getComponent方式
2 游戏中,经常为了获取方便,比较易用的方式如下(xuhaitao.instance),使用这种方式要注意三点,在场景中有且只有一个该类的脚本组件,再一个就是该脚本组件所依附的对象在场景中必须是激活的,否则会报空指针异常,最后一点是要将instance=this这样代码放在Awake函数中不要放在Start函数中:
第二种:就是通常意义上大家所说的单例,写法有两种:
通过公有静态方法的方式获取:
通过公有静态属性的方式获取:
在游戏中,单例模式一般在数据的保存和读取时用到
FR:海涛高软(QQ技术群:386476712)