本文实例讲述了php简单实现单态设计模式的方法。分享给大家供大家参考,具体如下:
单态设计模式通常包含以下三点:
· 一个私有的 构造方法;(确保用户无法通过创建对象对其进行实例化)
· 一个公有的 静态的 方法;(负责对其本身进行实例化)
· 一个私有的 静态的 属性;(用于保存仅有的一个实例化对象)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
<?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类的对象 ?> |
所谓的单态设计模式就是一个类只能产生/创建唯一一个对象
要编写单态设计模式,就必须让一个类只能实例化一个对象,而要想让一个类只能实例化一个对象,就要先让一个类不能实例化对象
希望本文所述对大家PHP程序设计有所帮助。