泛型单利模板:
using UnityEngine;
using System.Collections;
public class SingleTemplate<T> where T : class,new()
{
private static readonly object syslock = new object();
private static T instance;
public static T Instance
{
get
{
if (instance == null)
{
lock (syslock)
{
if (instance == null)
{
instance = new T();
}
}
}
return instance;
}
}
}
根据单利模板定义一个方法
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class SingleTest : SingleTemplate<SingleTest>
{
public void TestGame()
{
Debug.Log("测试方法");
}
}
最后在另一个脚本里调用单利方法
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Test : MonoBehaviour {
// Use this for initialization
void Start () {
SingleTest.Instance.TestGame();
}
}
完成啦!可以将测试脚本Test.cs挂在在一个空场景的摄像机上,一运行就会打印出测试方法里面的那句话。