翻译:GentlemanTsao,2020-06-24
文章目录
Java函数式接口一词是在Java 8中引入的。Java中的函数式接口是仅包含一个抽象(未实现)方法的接口。 除了单个未实现的方法外,函数式接口还可以包含已实现的默认方法和静态方法。
下面是一个Java函数式接口示例:
public interface MyFunctionalInterface {
public void execute();
}
上面的代码被视为Java中的函数式接口,因为它仅包含一个方法,并且该方法没有实现。 通常,Java接口不包含其声明的方法的实现,但可以包含默认方法或静态方法的实现。 下面是Java函数式接口的另一个示例,其中包含一些方法的实现:
public interface MyFunctionalInterface2{
public void execute();
public default void print(String text) {
System.out.println(text);
}
public static void print(String text, PrintWriter writer) throws IOException {
writer.write(text);
}
}
上面的接口在Java中仍然算作函数式接口,因为它仅包含一个未实现的方法。
函数式接口可以通过Lambda表达式实现
Java函数式接口可以通过Java Lambda 表达式实现。 下面的示例实现了函数式接口MyFunctionalInterface:
MyFunctionalInterface lambda = () -> {