zoukankan      html  css  js  c++  java
  • 如何理解PHP的单例模式

    单例模式就是让类的一个对象成为系统中的唯一实例,避免大量的 new 操作消耗的资源。

    PHP的单例模式实现要求:

        1、一个private的__construct是必须的,单例类不能在其它类中实例化,只能被自身实例化;

        2、拥有一个保存类的实例的静态成员变量;

        3、一个静态的公共方法用于实例化这个类,并访问这个类的实例;

    <?php
    class Demo{
        private static $MyObject ;        //保存对象的静态属性
        private function __construct(){   //私有化构造函数
            echo "这是构造方法<br>";
        }
        public static function getInstance(){
            if(!(self::$MyObject instanceof self)){
                echo "实例化<br>";
                self::$MyObject = new self;
            }
            return self::$MyObject;
        }
    
        //类的其它方法
        public function test(){
            echo "测试方法<br>";
        }
    }
    
    //第一次调用类的实例
    $first = Demo::getInstance();
    $first->test();
    //第二次调用类的实例
    $second = Demo::getInstance();
    $second->test();

    【运行结果】

    image.png

    通过结果,可以看到Demo类只实例化了一次。

  • 相关阅读:
    protobuf lib库的使用
    protobuf的下载、编译和使用
    使用python和pygame绘制繁花曲线
    经典方块游戏-俄罗斯方块
    经典方块游戏-贪吃蛇
    经典方块游戏-基础
    经典方块游戏一
    Python脚本管理
    SublimeText3设置显示空格及Tab显示为4个空格
    域名解析记录类型
  • 原文地址:https://www.cnblogs.com/rxbook/p/9106450.html
Copyright © 2011-2022 走看看