C#要实现单例模式必须要有以下三点:
声明私有静态成员、私有化构造函数、静态函数返回实例。
private static GameManager s_GameManager=null;
private GameManager()
{
}
public static GetInstance()
{
if(!s_GameManager)
{
s_GameManager=new GameManager();
}
return s_GameManager;
}
单例和静态的区别:单例模式是一种思想,静态只是一种语法,用静态语法实现单例思想。静态属于语言层,单例属于思想层。
- 什么是单例:一个应用程序,一次运行周期内,任何时间,任何地点,都可以得到同一个实例对象,该实例就是单例。
- 为什么用单例:和应用程序的逻辑无关和它的成本无关。它能提高开发过程中的扩展性;提高应用程序开发过程中的结合性;提高应用程序开发过程中的方便性。使团队中一个人做出的单例,其他人都可以调用。
- 什么情况下使用单例:当应用程序逻辑内的(某些数据)需要一个统一的存储空间的时候;当应用程序内逻辑内的(某些计算)需要一个统一的计算空间的时候;当应用程序内的(某些数据)需要一个统一的检查空间的时候;
- 常用单例模式的函数有:get,set,check 函数