函数式接口(FunctionalInterface)
1.如果一个接口中,只声明了一个抽象方法,则此接口就称为函数式接口
2.可以在一个接口上使用@FunctionalInterface注解,这样做可以检查它是否是一个函
数式接口,同时javadoc也会包含一条声明,说明这个接口是一个函数式接口
3.java.util.function包下定义了Java 8的丰富的函数式接口
常见的函数式接口:Runnable接口,用@FunctionalInterface标记
@FunctionalInterface
public interface Runnable {
public abstract void run();
}
自定义函数式接口
@FunctionalInterface
interface MyInterface{
void method1();
}
可以通过lambda表达式来创建函数式接口的对象
public class Demo {
public static void main(String[] args) {
MyInterface myInterface = ()-> System.out.println("AA");
}
}
@FunctionalInterface
interface MyInterface{
void method1();
}
Java内置四大核心函数式接口
消费型接口 Consumer<T> void accept(T t)
供给型接口 Supplier<T> T get()
函数型接口 Function<T,R> R apply(T t)
断定型接口 Predicate<T> boolean test(T t)