/* 将各个方法,写成一个单独的类,进行解耦管理。 */ zx包下编写加减乘除方法 =======================实体类 Operation============== package zx; public class Operation { private double numberA; private double numberB; public double getNumberA() { return numberA; } public void setNumberA(double numberA) { this.numberA = numberA; } public double getNumberB() { return numberB; } public void setNumberB(double numberB) { this.numberB = numberB; } //方法 public double getResult(){ double result =0; return result; } } ====================加法类 OperationAdd================== package zx; public class OperationAdd extends Operation { public double getResult(){ double result =0; result = this.getNumberA() + this.getNumberB(); return result; } } ================减法类 OperationSub============= package zx; public class OperationSub extends Operation{ public double getResult(){ double result =0; result = this.getNumberA() - this.getNumberB(); return result; } } =================乘法类 OperationMul ========== package zx; public class OperationMul extends Operation{ public double getResult(){ double result =0; result = this.getNumberA() * this.getNumberB(); return result; } } ================除法类 OperationDiv ========= package zx; public class OperationDiv extends Operation{ public double getResult(){ double result =0; if(this.getNumberB()!=0){ result = this.getNumberA() / this.getNumberB(); }else{ System.out.println("除数不能为0"); } return result; } } =======================测试类 Test=============== package zx; import java.util.Scanner; public class Test { public static void main(String[] args) { Operation o = new Operation(); Scanner sc = new Scanner(System.in); System.out.println("请输入一个数字"); double numberA = sc.nextInt(); System.out.println("请输入运算符号:+ - * /"); String fuhao = sc.next(); System.out.println("请再输入一个数字"); double numberB = sc.nextInt(); double sum =0; if("+".equals(fuhao)){ Operation oa = new OperationAdd(); oa.setNumberA(numberA); oa.setNumberB(numberB); sum = oa.getResult(); System.out.println("结果是:"+sum); }else if("-".equals(fuhao)){ Operation os = new OperationSub(); os.setNumberA(numberA); os.setNumberB(numberB); sum = os.getResult(); System.out.println("结果是:"+sum); }else if("*".equals(fuhao)){ Operation om = new OperationMul(); om.setNumberA(numberA); om.setNumberB(numberB); sum = om.getResult(); System.out.println("结果是:"+sum); }else if("/".equals(fuhao)){ Operation od = new OperationDiv(); od.setNumberA(numberA); od.setNumberB(numberB); sum = od.getResult(); System.out.println("结果是:"+sum); } } } |
|