• PHP设计模式


    有时候,部分对象需要被初始化多次。而特别是在如果初始化需要耗费大量时间与资源的时候进行预初始化并且存储下这些对象,就会用到原型模式:

    <?php
    /**
     * 
     * 原型接口
     *
     */
    interface Prototype { public function copy(); }
    
    /**
     * 具体实现
     *
     */
    class ConcretePrototype implements Prototype{
        private  $_name;
        public function __construct($name) { $this->_name = $name; } 
        public function copy() { return clone $this;}
    }
    
    class Test {}
    
    // client
    $object1 = new ConcretePrototype(new Test());
    var_dump($object1);//输出:object(ConcretePrototype)#1 (1) { ["_name":"ConcretePrototype":private]=> object(Test)#2 (0) { } } 
    $object2 = $object1->copy();
    var_dump($object2);//输出:object(ConcretePrototype)#3 (1) { ["_name":"ConcretePrototype":private]=> object(Test)#2 (0) { } }
    ?>
    
  • 相关阅读:
    python—pandas及DataFrame
    python模块以及import 报错:ImportError: No module named myModule
    第二周开课测试
    第二周开课博客
    javaweb第二课
    javaweb第一课
    大道至简.读后感
    读后感2
    读后感.1
    测试
  • 原文地址:https://www.cnblogs.com/taozi32/p/9226497.html
Copyright © 2020-2023  润新知