码迷,mamicode.com
首页 > 其他好文 > 详细

Prototype(原型模式)

时间:2017-07-04 13:31:48      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:cti   second   name   cond   rstp   资源   turn   function   tor   

有些时候,部分对象需要被初始化多次。而特别是在如果初始化需要耗费大量时间与资源的时候进行预初始化并且存储下这些对象。

<?php
 
interface Product {
}
 
class Factory {
 
    private $product;
 
    public function __construct(Product $product) {
        $this->product = $product;
    }
 
    public function getProduct() {
        return clone $this->product;
    }
}
 
class SomeProduct implements Product {
    public $name;
}
 
 
$prototypeFactory = new Factory(new SomeProduct());
 
$firstProduct = $prototypeFactory->getProduct();
$firstProduct->name = ‘The first product‘;
 
$secondProduct = $prototypeFactory->getProduct();
$secondProduct->name = ‘Second product‘;
 
print_r($firstProduct->name);
// The first product
print_r($secondProduct->name);
// Second product

  

Prototype(原型模式)

标签:cti   second   name   cond   rstp   资源   turn   function   tor   

原文地址:http://www.cnblogs.com/Czc963239044/p/7115999.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!