php教程

超轻量级php框架startmvc

php简单实现单态设计模式的方法分析

更新时间:2020-03-22 15:50 作者:startmvc
本文实例讲述了php简单实现单态设计模式的方法。分享给大家供大家参考,具体如下:单态

本文实例讲述了php简单实现单态设计模式的方法。分享给大家供大家参考,具体如下:

单态设计模式通常包含以下三点:

· 一个私有的 构造方法;(确保用户无法通过创建对象对其进行实例化) · 一个公有的 静态的 方法;(负责对其本身进行实例化) · 一个私有的 静态的 属性;(用于保存仅有的一个实例化对象)


<?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类的对象
?>

所谓的单态设计模式就是一个类只能产生/创建唯一一个对象

要编写单态设计模式,就必须让一个类只能实例化一个对象,而要想让一个类只能实例化一个对象,就要先让一个类不能实例化对象