违规行是:
public class InputField<W extends WidgetInterface>
extends InputFieldArray<W extends WidgetInterface>
如您所见,我正在尝试将泛型类型 ( InputFieldArray) 扩展到另一个泛型类型 ( InputField)。泛型类型参数W在这两种情况下都是WidgetInterface接口的实现。
如果我这样做,编译器会抱怨它期待 a >after the second W。好的,也许编译器足够聪明,我可以这样写:
public class InputField<W extends WidgetInterface> extends InputFieldArray<W>
但是,如果我这样做,编译器会抱怨第二个W“不在其范围内”。我怎么了?