使用Java8中的方法引用来引用构造函数

Java中的Lambda表达式使您可以将功能作为参数传递给方法。您也可以使用lambda表达式调用现有方法。

list.forEach(n -> System.out.println(n));

方法引用是简单,易于阅读的lambda表达式,可通过lambda表达式来调用/引用以及现有方法的名称。除了实例和静态方法,您还可以使用new关键字引用构造函数。

语法

以下是在Java中引用构造函数的语法。

ClassName::new

示例

interface myInterface{
   Test greet(String data);
}
class Test{
   Test(String data){
         System.out.println(data);
   }
}
public class MethodReferences {
   public static void main(String args[]) {
      myInterface in = Test::new;
      in.greet("Welcome to Tutorilspoint");
   }
}

输出结果

Welcome to Tutorilspoint