Java 8 新特性:函数式接口(Functional Interface)
在Java 8中,一个函数式接口是一个仅包含一个抽象方法的接口,可以通过Lambda表达式或方法引用来实例化。这种接口可以用来创建函数式编程风格的代码。
以下是一个简单的函数式接口的例子:
@FunctionalInterface
public interface MyFunctionalInterface {
void myMethod(String str);
}
在这个接口中,myMethod
是唯一的抽象方法。这个接口可以通过Lambda表达式实例化:
MyFunctionalInterface lambdaImpl = (String str) -> System.out.println(str);
lambdaImpl.myMethod("Hello, World!");
或者通过方法引用来实例化:
MyFunctionalInterface methodRefImpl = System.out::println;
methodRefImpl.myMethod("Hello, World!");
Java 8内置了很多函数式接口,例如java.util.function
包中的Supplier
, Consumer
, Function
, Predicate
等,这些可以用于编写更加简洁和表达式的代码。
评论已关闭