jdk8函数式接口,SAM类型的接口(Single Abstract Method)
https://blog.csdn.net/followwwind/article/details/78211531
https://blog.csdn.net/lkforce/article/details/98744598
JDK1.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
JDK1.8之后,又添加了一组函数式接口:
java.util.function.*
这个路径下有一大堆接口,都是函数式接口,代表了接口调用的各种不同应用场景。
另外,在JDK1.8开始,之前就有的函数式接口(比如Runnable接口)也都添加了@FunctionalInterface注解。