相關(guān)關(guān)鍵詞
關(guān)于我們
最新文章
PHP設(shè)計模式之原型模式定義與用法詳解
本文實例講述了PHP設(shè)計模式之原型模式定義與用法。分享給大家供大家參考,具體如下:
原型設(shè)計模式(Prototype Design Pattern)很有意思, 因為它使用了一種克隆技術(shù)來復(fù)制實例化的對象. 新對象是通過復(fù)制原型實例來創(chuàng)建的. 在這里, 實例是批實例化的具體類.原型設(shè)計模式的目的是通過使用克隆來減少實例化對象的開銷.與其從一個類實例化新對象, 完全可以使用一個已有實例的克隆.
克隆函數(shù)
PHP中使用原型設(shè)計模式的關(guān)鍵是要了解如何使用內(nèi)置函數(shù)__clone()
.
<?php abstract class CloneObject { public $name; public $picture; abstract function __clone(); } class Boy extends CloneObject { public function __construct() { $this->face = "handsome"; $this->name = "chenqionghe"; } public function display() { echo 'look : '.$this->face;; echo '<br />'.$this->name.'<br />'; } public function __clone() {} } $boy = new Boy(); $boy->display(); $cloneBoy = clone $boy; $cloneBoy->face = "still handsome"; $cloneBoy->display();