当前位置: 首页 > news >正文

我常用的两个单例模式写法 (继承Mono和不继承Mono的)

不继承Mono

不继承Mono代表不用挂载到场景物体上面,因此直接饿汉式 加 合并空运算符判空创建实例

 =>(lambda表达式)的意思是get,就是将instance赋给Instance属性

    //单例private  static JsonDataManager instance =new JsonDataManager();public static JsonDataManager Instance=>instance??( new JsonDataManager());//a??b a为空则返回b,否则返回a

继承Mono

继承Mono代表需要挂载到场景中,因此被挂载的物品就相当于该脚本的对象,所以要到awake里面为instance赋值
其实如下写法按理来讲是可能出现问题的,但是我目前没有遇到过,因为我严格将该脚本挂载到场景对象之中

 private  static JsonDataManager instance = new JsonDataManager();public static JsonDataManager Instance=>instance;private void Awake() {if(instance == null)instance = this;elseDestroy(gameObject);}

规范写法如下:
Unity :单例模式 + MonoBehaviour 是什么体验?-CSDN博客

http://www.lryc.cn/news/462165.html

相关文章:

  • Android 自定义Toast显示View
  • SCRM呼叫中心高保真Axure原型 源文件分享
  • Ubuntu(Linux)tcpdump使用方法详解
  • Centos安装Nginx 非Docker
  • 免费版的音频剪辑软件:这四款有没有你的菜?
  • Facebook的隐私之战:数据保护的挑战与未来
  • 自定义注解和组件扫描在Spring Boot中动态注册Bean(二)
  • 常见网络协议的介绍、使用场景及 Java 代码样例
  • 音视频好文总结
  • 云服务器磁盘满了,清理docker无用缓存、容器等清理
  • Flutter flutter_native_splash 使用指南
  • 谷歌审核放宽,恶意软件不再封号?是反垄断案影响还是开发者们的错觉
  • C++实现一个线程池
  • 为什么inet_ntoa会返回错误的IP地址?
  • 编码风格之(8)C++语言规范(Google风格)3.md
  • openrtp 音视频时间戳问题
  • 了解Android中为什么需要多线程?
  • Kaggle Python练习:使用外部库(Exercise: Working with External Libraries)
  • React 子组件调用父组件的方法,以及互相传递数据
  • 爬虫基础---python爬虫系列2
  • jmeter在beanshell中使用props.put()方法的注意事项
  • 息肉检测数据集 yolov5 yolov8适用于目标检测训练已经调整为yolo格式可直接训练yolo网络
  • 通过API进行Milvus实例配置
  • Excelize 开源基础库 2.9.0 版本正式发布
  • 人脸识别-特征算法
  • C++【内存管理】(超详细讲解C++内存管理以及new与delete的使用和原理)
  • elementUi el-table 表头高度异常问题
  • kubekey的应用
  • 如何识别并分类转录因子的家族
  • 【C++11】可变模板参数详解