自定义函数式接口
时间: 2023-08-19 09:03:49 浏览: 125
在Java中,函数式接口是指只有一个抽象方法的接口。Java 8 中引入了Lambda表达式和函数式接口,使得我们可以更方便地编写函数式代码。除了Java预定义的函数式接口外,我们还可以自定义函数式接口。
自定义函数式接口的步骤如下:
1. 创建一个接口并且使用@FunctionalInterface注解来标记它为函数式接口。
2. 在该接口中定义一个抽象方法,这个抽象方法就是我们自定义的函数式接口的唯一方法。
3. 如果需要,可以在接口中定义默认方法和静态方法。
下面是一个示例:
```java
@FunctionalInterface
interface MyFunctionInterface {
int operation(int x, int y);
default void printResult(int result) {
System.out.println("Result: " + result);
}
}
```
在上面的代码中,我们定义了一个自定义函数式接口 `MyFunctionInterface` ,它有一个抽象方法 `operation`,这个方法接受两个整数参数,并且返回一个整数。我们还定义了一个默认方法 `printResult`,用于打印结果。
我们可以使用Lambda表达式来创建一个实现 `MyFunctionInterface` 的对象,如下所示:
```java
MyFunctionInterface sum = (x, y) -> x + y;
int result = sum.operation(10, 20);
sum.printResult(result); // Output: Result: 30
```
在上面的代码中,我们使用Lambda表达式来实现 `MyFunctionInterface` 接口,并且使用这个实现来执行加法操作。最后,我们调用 `printResult` 方法来打印结果。
阅读全文