简单工厂模式---四则运算

根据不同的运算符实例化不同的对象


class Operation
{
  protected double numA = 0;
  protected double numB = 0;

  public double GetResult()
  {
    double result = 0;
    return result;
  }
 
  protected void set_A(int a){
  numA = a;
  }

  protected void set_B(int b){numB = b;}
}

class OperationAdd extends Operation
{
  public double GetResult()
  {
    double result = 0;
    result = numA + numB;
    return result;
  }
}

class OperationSub extends Operation
{
  public double GetResult()
  {
    double result = 0;
    result = numA - numB;
    return result;
  }
}

class OperationMul extends Operation
{
  public double GetResult()
  {
    double result = 0;
    result = numA * numB;
    return result;
  }
}

class OperationDiv extends Operation
{
  public double GetResult()
  {
    double result = 0;
    if (numB != 0)
    result = numA / numB;
    return result;
  }
}

class OperationFactory
{
  public static Operation createOperate(String operate)
  {
    Operation per = null;
    if (operate == "+"){
        per = new OperationAdd();
    }
    else if (operate == "-")
        per = new OperationSub();
    else if (operate == "*")
        per = new OperationMul();
    return oper;
  }
}


public class test {
 public static void main(String[] args) {
  Operation oper;
                per = OperationFactory.createOperate("+");
                oper.set_A(9);
                oper.set_B(9);
                System.out.println(oper.GetResult());
                per = OperationFactory.createOperate("-");
                System.out.println(oper.GetResult());
 }
}

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25361369/viewspace-719360/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/25361369/viewspace-719360/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值