分析Java中Lambda表达式的简化过程
代码详解:
public class LambdaDemo { //3.定义一个静态内部类 static class Like2 implements ILike{ @Override public void lambda() { System.out.println("i like lambda2"); } } public static void main(String[] args) { ILike like = new Like(); like.lambda(); //创建静态内部类对象 like = new Like2(); like.lambda(); //4.定义一个局部内部类 class Like3 implements ILike{ @Override public void lambda() { System.out.println("i like lambda3"); } } //创建局部内部类对象 like = new Like3(); like.lambda(); //5.匿名内部类,没有类的名称,必须借助接口或者父类 like = new ILike() { @Override public void lambda() { System.out.println("i like lambda4"); } }; like.lambda(); //使用lambda来简化 like = ()-> { System.out.println("i like lambda5"); }; like.lambda(); } } //1.定义一个函数式接口(函数式接口:只包含唯一一个抽象方法的接口) interface ILike{ void lambda(); } //2.实现类 class Like implements ILike{ @Override public void lambda() { System.out.println("i like lambda"); } }
上一篇:
IDEA上Java项目控制台中文乱码