<?php /** **原型设计模式: *** 抽象原型模式:声明一个克隆自己的接口 *** 具体原型模式:实现一个克隆自己的操作 **优点:可以在运行时刻 ,增加删除一个 ** 可以改变值和对象 ,以改变新对象 ** 用类动态配置应用 ** 支持取消操作 ** 支持修改日志操作 ****/ interface Protype{ public function copy(); } class Operation implements Protype{ private $obj; public function __construct($name){ $this->obj = $name; } public function getName(){ return $this->obj; } public function setName($name){ $this->obj = $name; } public function copy(){ return clone $this; } } class Client{ public static function main(){ $newson = new Operation(‘nnnn‘); var_dump($newson->copy()); } } Client::main();
时间: 2024-10-27 09:01:45