单例设计模式

webpenson, 30 十月, 2021

最终的结果只能实例化一个对象。

php中是: 

1.使  构造函数__construct  私有化   在前面加 private

2.定义一个静态属性,用来保存实例化的对象,static $obj=null;

2.创建一个静态方法,判断静态属性self::obj保存的是对象还是null,如果是对象就返回这个静态属性,如果是null就$obj = new self;

class A{
  
  static $obj = null;
  function __construct(){}

  public static create(){
    if(is_null(self::$obj)){
      self::$obj = new self;
    }
    return self::$obj;
  }
}

//调用

A::create();

 

      

 

评论