推导lambda表达式
- Lambda表达式,避免匿名内部类定义过多,其实质属于函数式编程的概念;
去掉一些没有意义的代码,只留下核心代码;
当前接口为函数式接口(任何一个接口,如果只包含唯一一个抽象方法,那么他就是一个函数式接口),可以通过Lambda表达式来创建该接口的对象;
- 1、实习类:接口+实现类+主线程调用抽象方法
- 2、静态内部类(注意:加static) :接口+静态内部类实现接口+主线程调用抽象方法
- 3、局部内部类:接口+主线程内实现接口+内部调用抽象方法
- 4、匿名内部类,没有类的名称,必须借助接口或父类:接口+主线程内实现接口(没有创建实现类,而是直接新建一个对象实现接口)+内部调用抽象方法
- 5、Lambda表达式:接口+主线程内实现接口(当前为函数式接口,只有一个抽象方法,直接新建接口对象实现抽象方法)+内部调用抽象方法
package com.zeng.demo01;
public class TextLambda01 {
static class Like2 implements ILike{
@Override
public void lambda() {
System.out.println("i like Lambda2");
}
}
public static void main(String[] args) {
ILike iLike = new Like();
iLike.