具有界面
public interface Extractor<T> {
// another method
void fake();
String extract(T document);
}
和另一个通过default
实现方法fake
的接口,
public interface SimpleExtractor<T> extends Extractor<T> {
default void fake() {}
}
和一个接受Extractor
作为构造函数参数的类
public class ExtractorUser<T> {
public ExtractorUser(Extractor<T> extractor) {
//...
}
}
到达此代码时,将发生NoClassDefFoundError
:
//...
new ExtractorUser<>((SimpleExtractor<T>)this::extractValues);
//...
extractValues
是与定义为SimpleExtractor<T>
的功能接口匹配的方法。
保护了解决这种结构的某些问题吗?