理解
- 只包含一个方法的接口,称之为函数式接口
 - 可以通过 Lambda 表达式来创建该接口的对象,如果Lambda表达式需要抛出一个异常,那么该异常在目标接口的抽象方法上也需要进行声明。
 - 我们可以在接口上使用
@FunctionalInterface注解,来对接口进行一个检查,判断它是否是一个函数式接口。 - 在
java.util.function包下定义了 Java 8 中丰富的函数式接口 

如果定义了多个抽象方法,由于注解的检查作用,就会报错
内置的函数式接口
消费型接口 Consumer
供给型接口 Supplier
抽象方法:T get()
函数式接口 Function(T,R)
抽象方法:R apply(T t)
断定型接口 Predicate
常见的内置函数式接口

