摘要:工厂方法模式没有做反射类检测工厂方法模式定义用于创建对象的接口,让子类决定实例化哪一个类。操作类除数不能为工厂接口类工厂方法
工厂方法模式
没有做反射类检测
$name; } public function __set($name, $value) { $this->$name = $value; } public function getResult() { return 0; } } class OperationAdd extends Operation { public function getResult() { return $this->_num1 + $this->_num2; } } class OperationSub extends Operation { public function getResult() { return $this->_num1 - $this->_num2; } } class OperationMul extends Operation { public function getResult() { return $this->_num1 * $this->_num2; } } class OperationDiv extends Operation { public function getResult() { if (empty($this->_num2)) { throw new Exception("除数不能为0", 1); } return $this->_num1 / $this->_num2; } } // ********** 工厂接口 - 类 ********** // Interface IFactory { public function CreateOperation(); } class AddFacroty implements IFactory { public function CreateOperation() { return new OperationAdd(); } } class SubFactory implements IFactory { public function CreateOperation() { return new OperationSub(); } } class MulFactory implements IFactory { public function CreateOperation() { return new OperationMul(); } } class DivFactory implements IFactory { public function CreateOperation() { return new OperationDiv(); } } // client try { //工厂方法 $f = new AddFacroty(); $o = $f->CreateOperation(); $o->_num1 = 10; $o->_num2 = 2; print_r($o->getResult()); } catch (Exception $e) { echo $e->getMessage(); }
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/23274.html
摘要:基于工厂角色和产品角色的多态性设计是工厂方法模式的关键。工厂方法模式之所以又被称为多态工厂模式,是因为所有的具体工厂类都具有同一抽象父类。工厂方法模式总结工厂方法模式是简单工厂模式的进一步抽象和推广。 JavaScript工厂模式 首先需要说一下工厂模式。工厂模式根据抽象程度的不同分为三种 简单工厂模式 工厂方法模式 抽象工厂模式 1.简单工厂模式 简单工厂模式:又称为静态工厂方法...
摘要:二简单工厂模式组成工厂类工厂模式的核心,通过调用它来实现其他类的功能。三工厂方法模式利用工厂方法模式可以有效解决简单工厂模式破坏开闭原则的问题。 一、概念 1、工厂模式分为三类:(1)简单工厂模式:一个工厂创建所有产品(2)工厂方法模式:一个工厂方法创建一个产品(3)抽象工厂模式:一个工厂方法创建一类产品 2、创建型模式这种模式是指将实例的创建和使用分离开来,隐藏类实例的创建细节,外界...
摘要:反射提供给面向对象编程可以自省的能力,即反射。在简单工厂模式中,根据传递的参数来返回不同的类的实例简单工厂模式又称为静态工厂方法模式。也就是简单工厂模式工厂工厂类。PHP高级特性-反射以及工厂设计模式的结合使用 [结合 Laravel-Admin 代码实例讲解]利用反射来实现工厂模式的生产而无需创建特定的工厂类本文地址http://janrs.com/?p=833转载无需经过作者本人授权转载...
摘要:我认为按书上的顺序比较好理解因为简单静态工厂模式是在工厂方法模式上缩减,抽象工厂模式是在工厂方法模式上再增强。所以我就先讲工厂方法模式了。抽象工厂模式抽象工厂模式就比较复杂了,我们一般的应用都写不到。 前言 只有光头才能变强 回顾前面: 给女朋友讲解什么是代理模式 包装模式就是这么简单啦 单例模式你会几种写法? 昨天写了单例模式了,今天是时候写工厂模式啦~ 工厂模式我个人认为其实比...
阅读 2578·2021-11-17 09:33
阅读 3871·2021-10-19 11:46
阅读 883·2021-10-14 09:42
阅读 2231·2021-09-22 15:41
阅读 4084·2021-09-22 15:20
阅读 4574·2021-09-07 10:22
阅读 2281·2021-09-04 16:40
阅读 793·2019-08-30 15:52