public interface Compute { int sum(int i,int j); }
public class MyMath { /** * 计算的一个方法 * @param compute 接口对象 * @param i 需要来进行求和的变量 * @param j 需要来进行求和的变量 */ public void sum(Compute compute, int i, int j) { int sum = compute.sum(i, j); System.out.println(i + "+" +j+ "=" + sum); } }
测试类:
public class Test { public static void main(String[] args) { MyMath myMath = new MyMath(); // 按照传统的方式的话,那么这里应该是创建实现类来进行实现 myMath.sum(new Compute() { @Override public int sum(int i, int j) { return i+j; } }, 250, 520); // 其实可以不要这么进行操作 MyMath myMath1 = new MyMath(); myMath1.sum((i,j)->i+j,200,300); } }
对比一下