单态设计模式通常包含以下三点: · 一个私有的 构造方法;(确保用户无法通过创建对象对其进行实例化) · 一个公有的 静态的 方法;(负责对其本身进行实例化) · 一个私有的 静态的 属性;(用于保存仅有的一个实例化对象) <?php class singleTon{ //用于保存仅有的一个实例化对象 private static $Instance=NULL; //构造方法 使用private 封装后 则只能在类的内部使用new去创建对象 private function __construct(){}; //只有通过这个方法才能返回本类中的对象,该方法是静态方法 用类名调用 public static getInstance(){ if(self::$Instance instanceof self){ //如果本类中的$Instance为空,说明还没有被实例化过 self::$Instance=new singleTon(); //实例化本对象 } return self::$Instance; } } $instance=singleTon::getInstance(); //只能使用静态方法getInstance()去获取singleTon类的对象 ?>
所谓的单态设计模式就是一个类只能产生/创建唯一一个对象
要编写单态设计模式,就必须让一个类只能实例化一个对象,而要想让一个类只能实例化一个对象,就要先让一个类不能实例化对象