@FunctionalInterface
public interface Foo {
void foo();
}
public class Example {
public static void main(String[] args) {
Example example = new Example();
Foo f = example.getFoo();
// 执行 Foo 函数式接口的foo方法,会这行下面的 selfInitialize 方法
f.foo();
}
public Foo getFoo() {
System.out.println("get foo");
return this::selfInitialize;
}
private void selfInitialize() {
System.out.println("self initialize");
}
}
输出
get foo
self initialize