加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

浅析php原型模式

发布时间:2020-12-13 02:12:45 所属栏目:PHP教程 来源:网络整理
导读:《PHP实例:浅析php原型模式》要点: 本文介绍了PHP实例:浅析php原型模式,希望对您有用。如果有疑问,可以联系我们。 原型模式: PHP实战 用原型实例指定创建对象的种类,并且通过拷贝这个原型来创建新的对象. 应用场景: 类的资源非常多、性能和平安要求,一

《PHP实例:浅析php原型模式》要点:
本文介绍了PHP实例:浅析php原型模式,希望对您有用。如果有疑问,可以联系我们。

原型模式:PHP实战

用原型实例指定创建对象的种类,并且通过拷贝这个原型来创建新的对象.
应用场景: 类的资源非常多、性能和平安要求,一般和工厂方法结合使用.PHP实战

代码如下:

<?php
/**
?* 原型模式
?*/
//声明一个克隆自身的接口
interface Prototype {
??? function copy();
}??
//产品要实现克隆自身的操作
class Student implements Prototype {
?????? //简单起见,这里没有使用get set
??? public $school;
??? public $major;
?????? public $name;
?????? public function __construct($school,$major,$name) {
????????????? $this->school = $school;
????????????? $this->major = $major;
????????????? $this->name = $name;
?????? }
?????? public function printInfo() {
????????????? printf("%s,%s,%sn",$this->school,$this->major,$this->name);
?????? }
??? public function copy() {
?????????? return clone $this;
??? }
}
$stu1 = new Student('清华大学','计算机','张三');
$stu1->printInfo();
$stu2 = $stu1->copy();
$stu2->name = '李四';
$stu2->printInfo();
?>

这里可以看到,如果类的成员变量非常多,如果由外部创建多个新对象再一个个赋值,则效率不高代码冗余也容易出错,通过原型拷贝复制自身再进行微小修改便是另一个新对象了.
PHP实战

设计模式的第一部分,创建型模式就总结完了.下面还有两部分布局型设计模式和行为型设计模式稍后继续.PHP实战

编程之家培训学院每天发布《PHP实例:浅析php原型模式》等实战技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培养人才。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读