首页 > 应用开发 > Java > java8 新特性之方法引用
方法引用通过方法的名字来指向一个方法。
方法引用可以使语言的构造更紧凑简洁,减少冗余代码。
方法引用使用一对冒号 :: 。
1、 构造器引用:它的语法是Class::new,或者更一般的Class< T >::new实例如下:
// 构造方法引用 暂时发现只能无参构造方法引用Supplier<Lambda> supplier = Lambda::new;
2、 静态方法引用:它的语法是Class::static_method,实例如下:
public class Lambda {
Lambda(){};
Lambda(int i){}; static void test(Lambda l){System.out.println(l);}; static void test2(String l){System.out.println(l);}; public static void main(String[] args) { // 构造方法引用 暂时发现只能无参构造方法引用
Supplier<Lambda> supplier = Lambda::new;
Consumer<Lambda> consumer = x->System.out.println(x);;
Consumer<Lambda> consumer2 = Lambda::test;
Consumer<String> consumer3 = Lambda::test2;
}
}
3、特定类任意实例的方法引用:它的语法是instance::method实例如下:
Supplier<Lambda> supplier = Lambda::new; Supplier<Integer> consumer4 = supplier.get()::repair;
由上可以看出,只是把这个类的方法,赋值给函数接口,具体调用的时候传入参数 ,编译期检查参数类型是否符合函数接口的泛型。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69992808/viewspace-2750556/ ,如需转载,请注明出处,否则将追究法律责任。