WEB开发 发表于 2012-10-23 22:56:14

PHP中“简单工厂模式”实例讲解

原创文章,转载请注明出处:http://www.cnblogs.com/hongfei/archive/2012/07/07/2580776.html
简单工厂模式:
①抽象基类:类中定义抽象一些方法,用以在子类中实现
②继承自抽象基类的子类:实现基类中的抽象方法
③工厂类:用以实例化对象
看完文章再回头来看下这张图,效果会比较好
http://pic002.cnblogs.com/images/2012/350329/2012070718075239.png
1 采用封装方式 2 3 <?php 4   class Calc{ 5         /** 6          * 计算结果 7          * 8          * @param int|float $num1 9          * @param int|float $num210          * @param string $operator11          * @return int|float12          */13         public function calculate($num1,$num2,$operator){14             try {15               $result=0;16               switch ($operator){17                     case '+':18                         $result= $num1+$num2;19                         break;20                     case '-':21                         $result= $num1-$num2;22                         break;23                     case '*':24                         $result= $num1*$num2;25                         break;26                     case '/':27                         if ($num2==0) {28                           throw new Exception("除数不能为0");29                         }30                         $result= $num1/$num2;31                         break;32                     return $result;33                 }34             }catch (Exception $e){35               echo "您输入有误:".$e->getMessage();36             }37       }38     }39   $test=new Calc();40 //    echo $test->calculate(2,3,'+');//打印:541   echo $test->calculate(5,0,'/');//打印:您输入有误:除数不能为042 ?>
页: [1]
查看完整版本: PHP中“简单工厂模式”实例讲解