GoF之单例模式(Singleton)

单例模式的定义


  单例模式的GOF的定义:确认类只有一个对象,并提供一个全局的方法来获取这个对象

  单例在实现的时候需要程序设计语言的支持,只要是具有静态类属性,静态类方法和重新定义类建造者存取层级。单例不建议大量使用

,运用单例需要注意。

 

public class Singleton
{  
    
    private static Singleton _instance;
    public static Singleton Instance
    {
     get{
          if(_instance==null)
             _instance=new Singleton();
           return _instance;
          }
     }
    private Singleton(){}
}

 

 


  单例使用的注意事项

    游戏系统中那些类适合单例模式去实现,必须经过挑选,至少要确认的是,它只能产生一个对象且不能够被继承。


 

少用单例模式如何使用单一对象

  让类具有计数功能来限制对象的数量,可以在构造函数中判断然后限制

  设置成为类的引用,依赖性注入到需要引用的地方

    分别注入或者使用类的静态成员

   

  

 

posted @ 2018-01-07 11:35  Recho  阅读(226)  评论(0编辑  收藏  举报