/** * 定义一个富有的函数式接口 */ @FunctionalInterface public interface Richable { //定义一个想买什么就买什么的的方法 void buy(); }
/** * 通过this引用本类的成员方法 */ public class Husband { //定义一个买房子的方法 public void buyHouse(){ System.out.println("买房子"); } //定义一个方法,参数传递Richable接口 public void marry(Richable r){ r.buy(); } //定义一个高兴的方法 public void soHappy(){ //调用方法,方法的参数Richable是一个函数式接口,传递Lambda表达式 /*marry(()->{ //使用this直接调用本类方法 this.buyHouse(); });*/ /* 使用方法引用优化Lambda表达式 this是已经存在的 本类的成员方法buyHouse也是已经存在的 所以我们可以直接使用this引用本类的成员方法buyHouse */ marry(this::buyHouse); } public static void main(String[] args) { new Husband().soHappy(); } }
标签:buyHouse,void,本类,引用,方法,public From: https://www.cnblogs.com/xuche/p/16733257.html