我在抽象 java 类中有以下代码:
protected abstract <E extends HasText & IsWidget> E createNewDisplayWidget();
编译得很好。但是,如果我在任何地方调用它,编译器都会抱怨:
Bound mismatch: The generic method createNewDisplayWidget() of type DemoClass is not applicable for the arguments (). The inferred type HasText is not a valid substitute for the bounded parameter <E extends HasText & IsWidget>
有没有办法要求抽象方法返回应该实现多个接口的东西?
注意:不,我不能创建一个特殊的接口来实现我喜欢的两个。GWT 有像 Label 这样的小部件,它们已经实现了上述接口,我想使用上述小部件。
编辑:我从这里得到了这样做的想法(第 22 页):