方法引用实现函数式接口一
方法引用实现函数式接口一
// 1.使用匿名内部类的方式通过函数式接口Runnable中的方法实现对Person类中show方法的调用 Person person = new Person("zhangfei", 30); Runnable runnable = new Runnable() { @Override public void run() { person.show(); } }; runnable.run(); // 没事出来秀一下哦 // 2.使用lambda表达式的方式实现Person类中show方法的调用 Runnable runnable1 = () -> person.show(); runnable1.run(); // 没事出来秀一下哦 // 3.使用方法引用的方式实现Person类中show方法的调用 Runnable runnable2 = person::show; runnable2.run();
-
run方法无参无返回值,Person类中的show方法也是无参无返回值,这两者的结构基本是一样的,调用show方法的时候不需要考虑参数不需要考虑返回值类型,只需要指定show方法这个方法名即可 方法引用主要指通过方法的名字来指向一个方法而不需要为方法引用提供方法体,该方法的调用交 给函数式接口执行。 我们用run方法的名字来指向Person类中的show方法,不需要为run方法提供方法体,但最后调用的时候依然是如上所述的runnable2.run();
