从匿名内部类到最简化的Lambda表达式逐渐演示
public interface Demo02Cook {
abstract void cook();
}
public class Demo02 {
public static void main(String[] args) {
//内部类格式
makeCook(new Demo02Cook() {
@Override
public void cook() {
System.out.println("内部类方式,无参无返回值");
}
});
//Lambda方式 --- (参数列表) -> (一些重写方法的代码)
makeCook(() ->{
System.out.println("标准Lambda格式");
}
);
//Lambda方式 ---继续简化
/*3、(一些代码):如果{}中的代码只有一行,无论是否有返回值,都可以省略: {}、return以及分号
注意:要省略,就必须{}、return以及分号一起省略。*/
makeCook(() ->System.out.println("标准Lambda格式---继续简化")
);
}
private static void makeCook(Demo02Cook cook){
cook.cook();
}
}
输出结果:
内部类方式,无参无返回值
标准Lambda格式
标准Lambda格式---继续简化