PHP设计模式——原型模式
来源:互联网 发布:雨林木风xp优化工具 编辑:程序博客网 时间:2024/06/07 05:44
声明:本系列博客参考资料《大话设计模式》,作者程杰。
用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。Prototype模式允许一个对象再创建另外一个可定制的对象,根本无需知道任何如何创建的细节,通过将一个原型对象传给那个要发动创建的对象,这个要发动创建的对象通过请求原型对象拷贝它们自己来实施创建。它主要面对的问题是:“某些结构复杂的对象”的创建工作;由于需求的变化,这些对象经常面临着剧烈的变化,但是他们却拥有比较稳定一致的接口。
在php中,类已经实现了原型模式,php有个魔术方法__clone()方法,会克隆出一个这样的对象。
看一下UML类图:
角色分析:
1.抽象原型,提供了一个克隆的接口
2.具体的原型,实现克隆的接口
具体的代码:
/**抽象原型类 * Class Prototype */abstract class Prototype{ abstract function cloned();}/**具体原型类 * Class Plane */class Plane extends Prototype{ public $color; function Fly() { echo "飞机飞啊飞!<br/>"; } function cloned() { return clone $this; }}
客户端测试代码:
header("Content-Type:text/html;charset=utf-8");//------------------------原型模式测试代码------------------require_once "./Prototype/Prototype.php";$plane1=new Plane();$plane1->color="Blue";$plane2=$plane1->cloned();$plane1->Fly();$plane2->Fly();echo "plane1的颜色为:{$plane1->color}<br/>";echo "plane2的颜色为:{$plane2->color}<br/>";
这里只是介绍一下原型模式的核心思想,其实在实际开发中直接clone即可。
欢迎关注我的视频课程,地址如下,谢谢。
0 0
- PHP设计模式——原型模式
- PHP设计模式——原型模式
- 设计模式—原型模式
- 设计模式—原型模式
- 设计模式—原型模式
- 设计模式—原型模式
- PHP 设计模式---原型模式
- 设计模式——原型设计模式
- 设计模式——原型设计模式
- 浅谈设计模式——原型模式
- 设计模式——原型模式(Prototype)
- 原型模式——设计模式系列
- 设计模式——原型模式
- 设计模式——原型模式
- java设计模式——原型模式
- 原型模式——设计模式系列
- 【大话设计模式】—— 原型模式
- C++设计模式——原型模式
- Unity NGUI——3.8.2版本更新说明
- Java学习 - synchronized同步机制
- 解题报告 之 ZOJ2332 Gems
- Linux学习之CentOS(十三)--CentOS6.4下Mysql数据库的安装与配置
- 浙江 美女跑路老板 从非洲押解回国(图)
- PHP设计模式——原型模式
- hdu1247-字典树,单词拆分
- 数组分割
- 黑马程序员——Java基础:多线程及其应用
- 读写EXCEL
- Demacia of the Ancients
- Windows7如何开启telnet服务
- 12th浙江省省赛 B题 Beauty of Array
- 用三个步骤实现响应式网页设计