设计思想
- 与工厂模式类似,都是用来创建对象。
- 与工厂模式的实现不同,原型模式是先创建好一个原型对象,然后通过clone 原型来创建新的对象,这样就免去了类创建是重复的初始化操作。
- 原型模式适用于大对象的创建,创建一个大对象需要很大的开销,如果每次new就会消耗很大,原型模式仅需内存拷贝。
实现
class A{ }
$cloneobj = clone (new A()); var_dump($cloneobj);
其实实现非常简单,直接用clone进行对象的克隆,避免不必要的开销。
class A{ }
$cloneobj = clone (new A()); var_dump($cloneobj);
其实实现非常简单,直接用clone进行对象的克隆,避免不必要的开销。