zoukankan      html  css  js  c++  java
  • 【简单的工厂模式】一个简单的计算器

    对于一个对设计模式一无所知的程序员来说,维护成本,无疑是一个致命的问题,所以从今开始,我要开始努力学习,设计模式,在这里,记录自己的学习成果

    生产类

    1. abstract class Oper 抽象类
    2. class Add 加
    3. class Sub 减
    4. class Mul 乘
    5. class Div 除
    6. class Operate 计算
    abstract class Oper {
        public $num1 = 0;
        public $num2 = 0;
    
        abstract public function getResult();
    
    }
    class Add extends Oper {
    
        public function getResult(){
            $result = $this->num1 +$this->num2;
            return $result;
        }
    }

    class Div extends Oper {
    
        public function getResult(){
            if($this->num2==0){
                throw_exception('分母不能为零');
            }
            $result = $this->num1 /$this->num2;
            return $result;
        }
    
    }
    class Operate {
    
        public function oper($operate){
            switch ($operate){
                case '+':
                    return new Add();
                    break;
                case '-':
                    return new Sub();
                    break;
                case '*':
                    return new Mul();
                    break;
                case '/':
                    return new Div();
                    break;
                default:
                    throw_exception('符号不支持');
                    break;
            }
        }
    }
  • 相关阅读:
    Vue图片国际化
    lambda表达式
    1
    JSPday11
    JSPday10
    JSPday09
    JSPday08
    JSPday07
    JSPday23 预留
    JSPday05(Servlet)
  • 原文地址:https://www.cnblogs.com/huanhang/p/6036530.html
Copyright © 2011-2022 走看看