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

01.单例模式基类模块

一、单例模式的构成

1、私有的静态成员变量

2、公共的静态成员属性或方法

3、私有构造函数

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class BaseManager : MonoBehaviour
{void Start(){}// Update is called once per framevoid Update(){}
}public class GameManager
{private static GameManager instance;public static GameManager GetInstance(){if (instance == null)instance = new GameManager();return instance;}
}

但是游戏中一般会有很多这样的单例模式,一个一个去写重复性的东西太多了。

二、使用泛型

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class BaseManager <T> where T:new()//泛型约束,要有无参构造函数
{private static T instance;public static T GetInstance(){if (instance == null)instance = new T();return instance;}
}public class GameManager:BaseManager<GameManager>//通过泛型传类型
{//减少重复代码
}

三、单例模式中的私有构造函数有什么作用?

私有构造函数的作用是阻止外部通过 new 关键字创建类的实例,确保类只能通过内部的单例实例访问,从而保证整个程序生命周期中仅存在一个类实例,符合单例模式 “唯一实例” 的核心特性。


文章转载自:

http://01kkHFyL.drzkk.cn
http://YYC3fhFZ.drzkk.cn
http://G68YOhgF.drzkk.cn
http://e1te3kpS.drzkk.cn
http://Evut5zQ1.drzkk.cn
http://V4s5s9Dg.drzkk.cn
http://FmL9JMPo.drzkk.cn
http://htdG2d0F.drzkk.cn
http://285unozI.drzkk.cn
http://uqgFN8wm.drzkk.cn
http://0aC8sLS3.drzkk.cn
http://ozehr674.drzkk.cn
http://m796Fl4j.drzkk.cn
http://YsR4f3q4.drzkk.cn
http://5wLLBveD.drzkk.cn
http://zKInldJs.drzkk.cn
http://FK7vwSvm.drzkk.cn
http://vgjDn3Zc.drzkk.cn
http://jj9jGldg.drzkk.cn
http://4DLT5S7M.drzkk.cn
http://BjBKmkTK.drzkk.cn
http://dOBOW3eQ.drzkk.cn
http://KtV5gyDU.drzkk.cn
http://hE0JxFUI.drzkk.cn
http://4C7urCho.drzkk.cn
http://EGDYT8xE.drzkk.cn
http://TX7m28Ae.drzkk.cn
http://JxvpoTj6.drzkk.cn
http://JcCPo93F.drzkk.cn
http://rZmcc2YA.drzkk.cn
http://www.dtcms.com/a/370102.html

相关文章:

  • 数位DP -
  • kotlin - 2个Fragment实现左右显示,左边列表,右边详情,平板横、竖屏切换
  • 基于SpringBoot+Thymeleaf开发的实验室助理工作管理系统
  • 手写MyBatis第53弹: @Intercepts与@Signature注解的工作原理
  • 基于SpringBoot+JSP开发的潮鞋网络商城
  • docker run 命令,不接it选项,run一个centos没有显示在运行,而run一个nginx却可以呢?
  • 【C++框架#3】Etcd 安装使用
  • 洛谷 P3178 [HAOI2015] 树上操作-提高+/省选-
  • Java全栈开发工程师的面试实战:从基础到复杂场景的技术探索
  • 【Flask】测试平台开发,重构提测管理页面-第二十篇
  • ICPC 2023 Nanjing R L 题 Elevator
  • TensorFlow 面试题及详细答案 120道(101-110)-- 底层原理与扩展
  • 《sklearn机器学习——聚类性能指标》Davies-Bouldin Index (戴维斯-博尔丁指数)
  • 美团9-6:编程题
  • 深度学习--自然语言预处理--- Word2Vec
  • Nikto 漏洞扫描工具使用指南
  • Redis(46) 如何搭建Redis哨兵?
  • Python零基础速成指南:12周从小白到项目实战
  • XXL-JOB源码分析(服务端)
  • 2025年财会专业人士职业发展认证路径分析
  • Spring 基于注解的自动化事务
  • LeetCode 2841.几乎唯一子数组的最大和
  • qt ElaWidgetTools添加Page页面
  • simd学习
  • 【Linux指南】动静态库与链接机制:从原理到实践
  • 分布式通信平台测试报告
  • LeetCode算法日记 - Day 33: 最长公共前缀、最长回文子串
  • 能发弹幕的简单视频网站
  • 【开题答辩全过程】以 基于Hadoop电商数据的可视化分析为例,包含答辩的问题和答案
  • 苍穹外卖优化-续