我在下面的采访中被问到 qn:
目前 Java 8 中引入了以下哪些功能接口:
我不认为它们中的任何一个是在 Java 8 中引入的。这些接口在 Java 8 之前就已经存在了。
引入了 java.util.function.* ,其中有一些新的接口,如 java.util.function.Predicate、java.util.function.Consumer。
请建议这个问题是否正确
虽然所有这些接口都存在于 Java 8 之前,但其中 2 个 -Runnable并且Callable-@FunctionalInterface从 Java 8 开始被注释。也就是说,这个注释是信息丰富的,即使没有它,它们也可以用作功能接口(这意味着它们可以从 Java 8 开始由 lambda 表达式或方法引用实现)。
另外两个不是函数式接口,因为它们有多个抽象方法。