JDk1.8以后接口中可以存在普通方法,不仅仅只有抽象方法,该方法是被 default 修饰的,并且该方法,他的实现子类都可以调用该方法。
在接口中定义普通方法,一般是用来修改之前版本的存在的不足。开发人员几乎使用不上。
dafault关键字在接口中表示普通方法,不能省略。
使用@FunctionalInterface来检验是否是函数式接口,只能有一个,多了不行,少了也不行
Lambda表达式是基于函数是接口,如果接口中有多个或者没有接口,就不会一一对应的找到了该接口中的抽象方法。Lambda表达式就会变易出错。
只保留方法的参数和方法体的是实现。