利用接口做参数,写个计算器,能完成+-*/运算
(1)定义一个接口Compute含有一个方法int computer(int n,int m);
(2)设计四个类分别实现此接口,完成+-*/运算
(3)设计一个类UseCompute,含有方法:
public void useCom(Compute com, int one, int two)
此方法要求能够:1.用传递过来的对象调用computer方法完成运算
2.输出运算的结果
(4)设计一个测试类,调用UseCompute中的方法useCom来完成+-*/运算
1、接口
package lianxi4;
public interface Computer {
int computer(int n,int m);
}
2、运算方法
package lianxi4;
public class Jiafa implements Computer {
@Override
public int computer(int n, int m) {
return m+n;
}
}
package lianxi4;
public class Jianfa implements Computer {
@Override
public int computer(int n, int m) {
// TODO 自动生成的方法存根
return n-m;
}
}
package lianxi4;
public class Chengfa implements Computer {
@Override
public int computer(int n, int m) {
return n*m;
}
}
package lianxi4;
public class Chufa implements Computer {
@Override
public int computer(int n, int m) {
// TODO 自动生成的方法存根
return n/m;
}
}
3、定义方法
package lianxi4;
public class Usecomputer {
//(3)设计一个类UseCompute,含有方法:
//public void useCom(Compute com, int one, int two)
//此方法要求能够:1.用传递过来的对象调用computer方法完成运算
// 2.输出运算的结果
public void useCom(Computer com, int one, int two)
{
System.out.println(com.computer(one, two));
}
}
4、测试及结果
package lianxi4;
public class text {
public static void main(String[] args) {
Usecomputer u=new Usecomputer();
Jiafa a=new Jiafa();
System.out.print("3+4的加法运算结果为:");
u.useCom(a, 3, 4);
Jianfa b=new Jianfa();
System.out.print("7-2的减法运算结果为:");
u.useCom(b, 7, 2);
Chengfa c=new Chengfa();
System.out.print("3x4的乘法运算结果为:");
u.useCom(c, 3, 4);
Chufa d=new Chufa();
System.out.print("9/3的除法运算结果为:");
u.useCom(d, 9, 3);
}
}