单例模式
这个大家都比较熟悉,用过的也很多
定义:确认只有一个对象,并提供一个全局的方法来获取这个对象
单例模式在实现时,需要程序设计语言的支持。只要具有静态类属性、静态类方法和重新定义类建造者存取层级。
单例模式的优点
1、唯一性质(限制对象的产生数量)
2、方便调用(提供方便获取唯一对象的方法)
单例模式的缺点
容易让人产生“单例癖”,单例癖主要是想“省略参数传递”和“能快速获取唯一对象”,从而滥用单例模式。
容易造成设计思考不周和过度使用的问题,不是说完全不让使用,而是应该仔细设计和特定的前提之下,适当地采用单例模式。
下面是例子
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace Leon_Singleton
{
//单例模式
public class Leon_Singleton
{
public string Name { get; set; }
private static Leon_Singleton _instance;
public static Leon_Singleton Instance
{
get
{
if (_instance == null)
{
Debug.Log("产生Singleton");
_instance = new Leon_Singleton();
}
return _instance;
}
}
private Leon_Singleton() { }
}
}