java方法引用“类::实例方法”的原理

在java中,我们可以通过“类::实例方法”的方式获取实例方法引用。这种引用方式背后的原理是什么?

根据java语言规范中的规定,当编译时声明是一个实例方法时,方法引用表达式的运行时计算过程如下:

  • 调用第一个参数作为方法目标对象。
  • 将第二个到最后一个参数作为方法调用参数。

例如,代码:

立即学习“Java免费学习笔记(深入)”;

ArrayList list = new ArrayList<>();
Collections.addAll(list, "a", "b", "c");

// 将集合中的字母转为大写
list.stream()
        // 数据流中的数据类型为 String,所以可以引用 String 类中的实例方法
        .map(String::toUpperCase)
        .forEach(System.out::println);
登录后复制

由于数据流中的数据类型是string,因此可以引用string类中的实例方法。string::touppercase表示调用string类的touppercase实例方法,并将数据流中的每个元素作为调用参数。

综上所述,java通过“类::实例方法”方式获取实例方法引用的原理是:将调用对象的类型作为方法目标,将后面的参数作为方法调用参数。

以上就是Java方法引用“类::实例方法”的原理是什么?的详细内容,更多请关注慧达安全导航其它相关文章!

点赞(0)

评论列表 共有 0 条评论

暂无评论
立即
投稿
发表
评论
返回
顶部