Java 如何创建函数式接口
本文写于 2022 年 06 月 20 日
函数式接口
当我们生命的接口有且仅有一个抽象方法签名时,这个接口就可以作为一个函数式接口。(可以有其他非抽象方法,或者覆盖 Object 的 public 方法)
例如:
@FunctionalInterface
public interface Adder {
int add(int a, int b);
}
这里使用 FunctionalInterface
注解,可以让编译器和 IDE 帮助我们检查该接口是否符合函数式接口的定义,如果不符合,就会报错。
当我们声明了一个函数式接口后,在传入参数时就可以直接使用 lambda 表示来简化操作。
class Main {
public static void main(String[] args) {
foo(() -> a + b, 1, 2);
}
private static void foo(Adder adder, int a, int b) {
System.out.println(adder.add(a, b));
}
}
或者你也可以选择创建一个实现类实现 Adder
接口,再将类实例化后传入方法。
或者也可以使用匿名内部类。
(完)
原创文章,作者:306829225,如若转载,请注明出处:https://blog.ytso.com/276026.html