函数式接口(Functional Interface)就是一个有且仅有一个抽象方法,但是可以有多个非抽象方法的接口。
函数式接口可以被隐式转换为 lambda 表达式。
JDK 1.8 之前已有的函数式接口:
java.lang.Runnable java.util.concurrent.Callable
java.security.PrivilegedAction java.util.Comparator java.io.FileFilter
java.nio.file.PathMatcher java.lang.reflect.InvocationHandler
java.beans.PropertyChangeListener java.awt.event.ActionListener
javax.swing.event.ChangeListener
JDK 1.8 新增加的函数接口:
java.util.function
@FunctionalInterface 注解一个接口为函数式接口