利用接口做参数,写个计算器,能完成加减乘除运算。 (1)定义一个接口Compute含有一个方法int computer(int n, int m)。 (2)提供四个匿名内部类实现此接口,分别完成加减乘除运算。 (3)设计一个类UseCompute,类中含有方法:public void useCom(Compute com, int one, int two), 此方法能够用传递过来的对象调用computer方法完成运算,并输出运算的结果。 (4)设计一个主类Test,调用UseCompute中的方法useCom来完成加减乘除运算。
时间: 2024-03-03 17:49:30 浏览: 131
好的,我来帮你写一个Java程序来完成这个任务:
```java
interface Compute {
int compute(int n, int m);
}
class UseCompute {
public void useCom(Compute com, int one, int two) {
int result = com.compute(one, two);
System.out.println("Result: " + result);
}
}
public class Test {
public static void main(String[] args) {
UseCompute useCompute = new UseCompute();
useCompute.useCom(new Compute() {
@Override
public int compute(int n, int m) {
return n + m;
}
}, 10, 5);
useCompute.useCom(new Compute() {
@Override
public int compute(int n, int m) {
return n - m;
}
}, 10, 5);
useCompute.useCom(new Compute() {
@Override
public int compute(int n, int m) {
return n * m;
}
}, 10, 5);
useCompute.useCom(new Compute() {
@Override
public int compute(int n, int m) {
if (m == 0) {
throw new IllegalArgumentException("Divisor cannot be zero");
}
return n / m;
}
}, 10, 5);
}
}
```
程序的输出结果为:
```
Result: 15
Result: 5
Result: 50
Result: 2
```
这个程序定义了一个接口`Compute`,其中有一个方法`compute`,用于计算两个整数的结果。然后,我们提供了四个匿名内部类来实现这个接口,分别完成加减乘除运算。我们还定义了一个类`UseCompute`,其中有一个方法`useCom`,用于使用传递过来的对象调用`compute`方法完成运算,并输出结果。最后,我们在主类`Test`中调用`useCom`方法来完成加减乘除运算,并输出结果。
阅读全文