博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
一个更加简洁的 建造者模式
阅读量:5917 次
发布时间:2019-06-19

本文共 1312 字,大约阅读时间需要 4 分钟。

_type = $type; } //建造产品的价格 public function setPrice($price) { echo 'set the price of the product,'; $this->_price = $price; } //建造产品的颜色 public function setColor($color) { echo 'set the color of the product,'; $this->_color = $color; }}/*将要建造的,目标对象的参数*/$config = array( 'type' => 'shirt', 'price' => 100, 'color' => 'red',);/*不使用建造者模式*/$product = new Product();$product->setType($config['type']);$product->setPrice($config['price']);$product->setColor($config['color']);//var_dump($product);/** * builder类--使用建造者模式 */class ProductBuilder{ public $_config = null; public $_object = null; public function ProductBuilder($config) { $this->_object = new Product();//在这里借用具体生产过程的对象 $this->_config = $config; } public function build() { echo '建造类开始工作了:'; $this->_object->setType($this->_config['type']); $this->_object->setPrice($this->_config['price']); $this->_object->setColor($this->_config['color']); } public function getProduct() { return $this->_object; }}$objBuilder = new ProductBuilder($config);//新建一个建造者$objBuilder->build();//建造者去建造$objProduct = $objBuilder->getProduct();//建造者返回-它建造的东西var_dump($objProduct);?>

 

转载于:https://www.cnblogs.com/jiufen/p/4994604.html

你可能感兴趣的文章
zabbix专题:第十章 zabbix自动发现功能详解
查看>>
2012过年回家:火车站步步惊心
查看>>
keepalived 主从配置日志报错:one or more vip associated with vrid mismatch actual master advert...
查看>>
Android第二十二期 - QQ5.0版本最简洁实现方法
查看>>
分布式爬虫系统设计、实现与实战:爬取京东、苏宁易购全网手机商品数据+MySQL、HBase存储...
查看>>
Android Studio 第六十期 - Android推流直播(斗鱼部分页面功能)
查看>>
实现websocket多人聊天,很简单
查看>>
笔记:Linux系统Oracle数据库乱码问题的解决方法
查看>>
Cisco3560交换机enable密码破解和恢复出厂设置
查看>>
如何在数据库中存储一棵树
查看>>
enq: SQ – contention、cursor: pin S wait on X等事件引发的故障处理
查看>>
十二款用于自主云评测的开源工具
查看>>
Android Studio第二十期 - 识别Recorder声纹显示水波泡泡效果
查看>>
使用systemtap抓取ssh登录的用户名和密码
查看>>
为什么你总是拿不到高薪?
查看>>
SCCM 2012系列15 操作系统播发④
查看>>
Formik官方应用案例解析( 五)React Native
查看>>
MySQL管理之道:第二版上市!China-Pub首发
查看>>
从云原生看企业云的未来
查看>>
Shell图形化监控网络流量
查看>>