利用接口做参数,写个计算器,能完成加减乘除运算。 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-02-28 10:55:23 浏览: 188
好的,以下是代码实现:
1. 定义Compute接口
```java
public interface Compute {
int computer(int n, int m);
}
```
2. 实现加减乘除四个类
```java
public class Add implements Compute {
@Override
public int computer(int n, int m) {
return n + m;
}
}
public class Sub implements Compute {
@Override
public int computer(int n, int m) {
return n - m;
}
}
public class Mul implements Compute {
@Override
public int computer(int n, int m) {
return n * m;
}
}
public class Div implements Compute {
@Override
public int computer(int n, int m) {
if (m == 0) {
throw new IllegalArgumentException("除数不能为0");
}
return n / m;
}
}
```
3. 设计UseCompute类
```java
public class UseCompute {
public void useCom(Compute com, int one, int two) {
int result = com.computer(one, two);
System.out.println("运算结果为:" + result);
}
}
```
4. 设计Test主类
```java
public class Test {
public static void main(String[] args) {
UseCompute uc = new UseCompute();
int a = 10;
int b = 5;
Compute add = new Add();
Compute sub = new Sub();
Compute mul = new Mul();
Compute div = new Div();
uc.useCom(add, a, b);
uc.useCom(sub, a, b);
uc.useCom(mul, a, b);
uc.useCom(div, a, b);
}
}
```
这样就可以通过传递不同的Compute对象来完成不同的加减乘除运算了。
阅读全文