函数式接口:有且只有一个抽象方法的接口哦被称作函数式接口。其他不是抽象方法的方法可以存在多个
定义函数式接口:
@FunctionalInterface//作用:判断此接口是否为函数式接口 是则编译成功,否则报错(原因:函数式接口中有多于1个的抽象方法或者没有)
public interface Jiekou {
//定义一个抽象类方法,函数式接口中只能有一个抽象方法
public abstract void method();
}
使用:
import java.io.*;
public class FuXi2 {
public static void main(String[] args) throws IOException {
demo02();
demo01(() ->System.out.println("111111111111"));//lambda表达式最简写 使用条件:参数类型是函数式接口
//简写时把抽象方法去掉留下括号如上方代码所示
}
private static void demo01(Jiekou a) {
a.method();
}
private static void demo02() {
new FuXi4().method();//直接new函数式接口实现类
new FuXi4() {//直接new函数式接口实现类然后在里面重写抽象方法
@Override
public void method() {
System.out.println("aaaaaaaaaaaaaaaaaaaaa");
}
}.method();
}
}