1、利用接口做参数,写个计算器,能完成+-*/运算 (1)定义一个接口ICalculator含有一个方法int calculate(int n,int m); (2)设计四个类分别实现此接口,完成+-*/运算 (3)设计一个类UseCompute,含有方法:public void useCom(ICalculator calc, int one, int two) 此方法要求能够: 1.用传递过来的对象调用calculate方法完成运算 2.输出运算的结果 (4)设计一个测试类Test,调用UseCompute中的方法useCom来完成+-*/运算
时间: 2024-03-26 10:36:26 浏览: 19
好的,我理解了你的问题。以下是实现你所需的计算器的代码:
首先,定义一个接口`ICalculator`:
```java
public interface ICalculator {
int calculate(int n, int m);
}
```
然后,设计四个类分别实现此接口,完成加减乘除运算:
```java
public class AddCalculator implements ICalculator {
@Override
public int calculate(int n, int m) {
return n + m;
}
}
public class SubCalculator implements ICalculator {
@Override
public int calculate(int n, int m) {
return n - m;
}
}
public class MulCalculator implements ICalculator {
@Override
public int calculate(int n, int m) {
return n * m;
}
}
public class DivCalculator implements ICalculator {
@Override
public int calculate(int n, int m) {
return n / m;
}
}
```
接下来,设计一个类`UseCompute`,含有方法`useCom`,能够用传递过来的对象调用`calculate`方法完成运算,并输出运算的结果:
```java
public class UseCompute {
public void useCom(ICalculator calc, int one, int two) {
int result = calc.calculate(one, two);
System.out.println("运算结果为:" + result);
}
}
```
最后,设计一个测试类`Test`,调用`UseCompute`中的方法`useCom`来完成加减乘除运算:
```java
public class Test {
public static void main(String[] args) {
UseCompute useCompute = new UseCompute();
ICalculator add = new AddCalculator();
ICalculator sub = new SubCalculator();
ICalculator mul = new MulCalculator();
ICalculator div = new DivCalculator();
useCompute.useCom(add, 10, 2); // 输出:运算结果为:12
useCompute.useCom(sub, 10, 2); // 输出:运算结果为:8
useCompute.useCom(mul, 10, 2); // 输出:运算结果为:20
useCompute.useCom(div, 10, 2); // 输出:运算结果为:5
}
}
```
这样,就完成了一个能够进行加减乘除运算的计算器。希望我的回答能够帮助到你!