huanhang

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

生产类

  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;
        }
    }
}

 

分类:

技术点:

相关文章: