php简单策略设计模式

<?php

/**
* 策略模式
* @author 桃谷六仙
*
*/

interface Math{
public function calc($op1,$op2);
}

class MathAdd implements Math{
public function calc($op1, $op2){
return $op1+$op2;
}
}

class MathSub implements Math{
public function calc($op1, $op2){
return $op1-$op2;
}
}

class MathMul implements Math{
public function calc($op1, $op2){
return $op1*$op2;
}
}

class MathDiv implements Math{
public function calc($op1, $op2){
return $op1/$op2;
}
}

class computer{
private $math=null;

public function __construct($math){
$mathclass='Math'.$math;
$this->math=new $mathclass();
}
public function getResult($op1,$op2){
return $this->math->calc($op1,$op2);
}
}

猜你喜欢

转载自www.cnblogs.com/zhangjian816/p/10823649.html