Lambda表达式设计初衷是为了相对于匿名内部类省略步骤,突出核心意思。
必须是接口 接口里面必须只能有一个抽象方法(只有一个抽象方法的接口我们叫做函数式接口) 必须在有上下文的前提下才能使用lambda表达式。(因为lambda表达式要根据上下文去推断自己实现的哪个接口,如果没有上下文。他不知道自己实现哪个接口,就会编译失败。)