PHP中如何实现原型模式以复用对象结构?
- 内容介绍
- 相关推荐
本文共计1117个文字,预计阅读时间需要5分钟。
在之前的文章《浅析PHP中的迭代器模式》中,我们介绍了PHP中的迭代器模式。下文章节深入讲解了PHP中的原型模式。原型模式实际上是更形象地称谓为克隆模式。其主要行为是复制一个已经存在的对象,生成一个新对象。
克隆模式主要行为是复制一个已经存在的对象,生成一个新对象。
在之前的文章《浅谈PHP中的迭代器模式》中我们介绍了PHP中的迭代器模式,下面本篇文章带大家了解一下PHP中的原型模式。原型模式其实更形象的来说应该叫克隆模式。它主要的行为是对对象进行克隆,但是又把被克隆的对象称之为最初的原型,于是,这个模式就这样被命名了。说真的,从使用方式来看真的感觉叫克隆模式更贴切一些。
Gof类图及解释
GoF定义:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象
GoF类图:
代码实现:
abstract class Prototype { public $v = 'clone' . PHP_EOL; public function __construct() { echo 'create' . PHP_EOL; } abstract public function __clone(); }
首先我们通过模拟的方式定义了一个原型,这里主要是模拟了__clone()这个方法。
本文共计1117个文字,预计阅读时间需要5分钟。
在之前的文章《浅析PHP中的迭代器模式》中,我们介绍了PHP中的迭代器模式。下文章节深入讲解了PHP中的原型模式。原型模式实际上是更形象地称谓为克隆模式。其主要行为是复制一个已经存在的对象,生成一个新对象。
克隆模式主要行为是复制一个已经存在的对象,生成一个新对象。
在之前的文章《浅谈PHP中的迭代器模式》中我们介绍了PHP中的迭代器模式,下面本篇文章带大家了解一下PHP中的原型模式。原型模式其实更形象的来说应该叫克隆模式。它主要的行为是对对象进行克隆,但是又把被克隆的对象称之为最初的原型,于是,这个模式就这样被命名了。说真的,从使用方式来看真的感觉叫克隆模式更贴切一些。
Gof类图及解释
GoF定义:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象
GoF类图:
代码实现:
abstract class Prototype { public $v = 'clone' . PHP_EOL; public function __construct() { echo 'create' . PHP_EOL; } abstract public function __clone(); }
首先我们通过模拟的方式定义了一个原型,这里主要是模拟了__clone()这个方法。

