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

织梦cms安装网站程序建设工程质量检测网站

织梦cms安装网站程序,建设工程质量检测网站,建筑投标网站,装修设计公司网站单例模式 1. 基础 定义:单例模式是指在内存中只会创建且仅创建一次对象的设计模式。在程序中多次使用同一个对象且作用相同时,为了防止频繁地创建对象使得内存飙升,单例模式可以让程序仅在内存中创建一个对象,让所有需要调用的地…

单例模式

1. 基础

定义:单例模式是指在内存中只会创建且仅创建一次对象的设计模式。在程序中多次使用同一个对象且作用相同时,为了防止频繁地创建对象使得内存飙升,单例模式可以让程序仅在内存中创建一个对象,让所有需要调用的地方都共享这一单例对象。在Unity的编程中比如①用于输入管理的InputManager;②时间中心EventSystem等,这类具有很强且频繁功能的组件往往会写成单例的模式。

类型:单例模式可分为懒汉模式和饿汉模式两种,本文不做详细讲述。
懒汉式:在真正需要使用对象时才去创建该单例类对象;
饿汉式:在类加载时已经创建好该单例对象,等待被程序使用;

代码:一个C#单例模式的代码如下,其定义了一个class T的一个单例

using System;namespace UnityLearn
{public class Single<T>where T: class{private static T _instance;// 没有实例时创建一个实例,有的话返回创造过的那个实例public static T Instance{get{if (_instance == null){Type type = typeof(T);_instance = Activator.CreateInstance(type, true) as T;}return _instance;}}protected Single(){}}
}

在实际使用时,如想创建一个Class的单例可直接使用以下方式:

public class A : Single<A>
{// 类内容
}

2. SingleMono

但是我们在Unity中往往都会用到MonoBehavior,此时需要将单例代码稍加修改:

    public class SingleMono<T> : MonoBehaviourwhere T: SingleMono<T>{protected static T instance;// 创建一个GameObject,也是单例的private static GameObject go;public static T Instance{get{// 在创建时也会检查goif (instance == null){if (!go){// go不存在时先Find,找不到的话再创建go = GameObject.Find("SingletonMono");if (!go){go = new GameObject("SingletonMono");}// 不被销毁DontDestroyOnLoad(go);// 从物体上获得单例instance = go.GetComponent<T>();// 物体上没有单例时添加一个单例if (!instance){instance = go.AddComponent<T>();}}}return instance;}}}

实际使用时用法类似:

public class A : SingleMono<A>
{// 类内容
}

代码中的where T: SingleMono<T>我也难以理解是什么意思,有知道的朋友请答疑解惑,不胜感激。

http://www.yayakq.cn/news/559439/

相关文章:

  • 赣州省住房和城乡建设厅网站网站模板免费推荐
  • 怎么做网站作业vs做网站案例
  • 西宁高端网站开发公司大连企业网站排名优化
  • 上海建设工程交易中心网站适用于建设微型网站
  • 常用设计网站有哪些软件湖南土建网
  • 甘肃住房和城乡建设局网站怎样设计一个网页
  • 网站建设资料准备标准wordpress php7 报错
  • 美团这个网站多少钱做的ui个人中心页设计说明
  • 设计网站 问题wordpress 全站密码
  • 网站建设与服务技能实训心得体会网站logo制作软件
  • 大型网站建设动力无限wordpress做超链接
  • 成都网站建设定制开发系统阿里云建站教程视频
  • 分类网站 模板免费自助建站自助建站平台
  • 不忘初心网站建设网站建设资金筹措的方案
  • 浙江中立建设有限公司网站深圳龙岗建网站公司
  • 如何做简单网站首页wordpress syntaxhighlighter
  • ecetc商务网站建设工程师成都网页平面设计培训班
  • 网站开发的主要步骤网页设计好学吗
  • 外贸汽车配件做那个网站网站内容编写方法
  • 网站建设表单教案杭州网站建设找思创
  • j网站开发的相关知识做网站的岗位好吗
  • 视频类网站开发尚硅谷python基础教程
  • WordPress源码带会员中心系统公司网站中新闻中心怎样做优化
  • 毕设做网站 方面的论文本地网站构建
  • 关于网站的制作wordpress 模板安装
  • 广东建设局网站建大型网站公司
  • 自己怎么做一元购物网站哪有深圳设计公司
  • 网站开发 招聘 龙岩用备案的网站做违法网站
  • 一个网站想看访客量怎么做广州小企业网站制作
  • 网站后台账号密码忘记了怎么办网站推广优化外链