时间:2021-07-01 10:21:17 帮助过:28人阅读
原型模式(Prototype) 理解起来也不算很难。
总结起来就是通过一种克隆的方式去创建对象,节省创建对象的复杂度。
主要可以用来防止重复创建对象带来的大量代码冗余。
记录代码如下:
<?php /** 抽象原型类 * abstract Class Prototype */ abstract Class Prototype { abstract function Cloned(); } /** 英雄类 继承抽象类 * Class Hero */ class Hero extends Prototype { public $weapon; // 武器变量 function Create() { echo "英雄已经创建完成,手里拿着"; } // 克隆方法 function Cloned() { return clone $this;// PHP clone方法 } }
<?php header("Content-Type:text/html;charset=utf-8"); //------------------原型模式index.php------------------ require_once "Prototype.php"; // 实例化英雄类 为一号英雄 $hero1 = new Hero(); $hero1->weapon = "琉璃琴"; // 添加武器 // 第二次通过克隆一号英雄 得到二号英雄 $hero2 = $hero1->Cloned(); $hero1->Create(); echo "=>{$hero1->weapon}<br/>"; // 克隆 会将类里面的函数和变量复制一份 $hero2->Create(); echo "=>{$hero2->weapon}<br/>";
输出结果为:
英雄已经创建完成,手里拿着=>琉璃琴
英雄已经创建完成,手里拿着=>琉璃琴
相关推荐:
PHP设计模式之 单例模式
PHP设计模式之抽象工厂
PHP设计模式之工厂方法
以上就是PHP设计模式之 原型模式的详细内容,更多请关注Gxl网其它相关文章!