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

后台网站下载网站程序开发公司

后台网站下载,网站程序开发公司,wordpress文字logo,电脑 手机网站建站单例模式 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/910583/

相关文章:

  • 保定市城市规划建设局网站代写文章质量高的平台
  • 深圳企业建站程序网站怎样备案
  • 建站公司网站源码做一个网站平台的流程是什么
  • 建站报价网站的页脚
  • 网站里怎么做301指向人和动物做的电影网站
  • 山东青?u68元建网站seo是网站搜索引擎上的优化
  • 洛阳 网站建设 大师字画企业cms建站系统
  • 做网站不打广告怎么赚钱网站建设中常见的问题
  • 电商网站建站小制作简单易学
  • 备案需要网站空间电商自学网免费
  • 产品 网站建设简述网站开发的5个步骤
  • 兄弟们有没有没封的网站网站开发播放大视频卡顿
  • 个人网站备案 导航wordpress php 7.2
  • 怎么建设和聚享游一样的网站呢企业手机网站建
  • 铁岭网站建设网络优化高端网站制作费用
  • 深圳家居网站建设公司排名wordpress自动安装
  • 房地产政策最新消息辽宁seo推广软件
  • wordpress ogseo知识是什么意思
  • 建材企业网站推广方案青岛网站排名
  • 网站建设视觉效果聚企360做的网站
  • 做网站优化的协议书电商网站开发 思维导图
  • 免费企业信息查询网站已购买域名 如何做网站
  • 网站的基本布局做加盟童装交流网站
  • 天津大学生专业做网站北京专业制作网站公司
  • 中小型企业网站模板南京做网站xjrkj
  • 杭州网站设计 site百度怎样建立网站链接
  • 北京网站优化方案wordpress仪表盘定制
  • 重庆网站搭建哪里可以做上城网站建设
  • 简单的网站开发花蝴蝶免费视频在线观看高清版
  • 手机网站营销朝阳网站开发