匿名内部类

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);
    }
}

对比一下

posted @   雩娄的木子  阅读(22)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示