题目:
给定一个厨子 Cook 接口,内含唯一的抽象方法 makeFood ,且无参数、无返回值。
使用Lambda的标准格式调用invokeCook方法,打印输出“吃饭啦!”字样。
普通写法:
/*
定义一个厨子Cook接口,内含唯一的抽象方法makeFood
*/
public interface Cook {
//定义无参数无返回值的方法makeFood
public abstract void makeFood();
}
public class Demo01Cook {
public static void main(String[] args) {
//调用invokeCook方法,参数是Cook接口,传递Cook接口的匿名内部类对象
invokeCook(new Cook() {
@Override
public void makeFood() {
System.out.println("吃饭啦!");
}
});
//定义一个方法,参数传递Cook接口,方法内部调用Cook接口中的方法makeFood
public static void invokeCook(Cook cook) {
cook.makeFood();
}
}
Lambda标准写法:
public static void main(String[] args) {
invokeCook(() ‐> {
System.out.println("吃饭啦!");
});
}
代码演示: