Java 8 能否动态实现接口以供方法参考?
2022-09-02 12:31:33
我学习了Java 8的新功能。
我正在玩不同的例子,我发现了一个奇怪的行为:
public static void main(String[] args) {
method(Test::new);
}
static class Test{
}
private static void method(Supplier<Test> testSupplier){
Test test = testSupplier.get();
}
此代码编译成功,但我不知道它是如何工作的。
为什么可以接受为供应商?Test::new
供应商界面看起来非常简单:
@FunctionalInterface
public interface Supplier<T> {
T get();
}