Hello! 欢迎来到小浪资源网!


Java中“类::实例方法”究竟是如何工作的?


Java中“类::实例方法”究竟是如何工作的?

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

Java 中,“类::实例方法”的方式可以方便地获取实例方法的引用。

原理剖析

如同问题注释所述,被引用方法的参数需要与抽象方法的第二个到最后一个参数保持一致。这是因为:

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

  • 实例方法的第一个参数隐含为 this 指针(即实例对象自身)。
  • 当实例对象类型与抽象方法第一个参数类型一致时,可以使用类名引用实例方法。

引用实例方法的语法

类名::实例方法名

示例

ArrayList<String> list = new ArrayList<>(); Collections.addAll(list, "a", "b", "c"); list.stream()     .map(String::toUpperCase) // 引用 String 类中的实例方法 toUpperCase()     .forEach(System.out::println);

该代码将集合中的字母转为大写,由于数据流中的数据类型为 string,因此可以使用 string 类中的实例方法 string::touppercase 进行映射。

总结

“类::实例方法”的方式提供了获取实例方法引用的便捷途径,其原理在于实例对象类型的匹配,以及对实例方法参数的正确传参。

相关阅读