0
我有下面的方法,它返回一個包含所有的Types
元素的枚舉set:的java EnumSet,不兼容的類型:推斷變量E具有不相容邊界
@Override
public EnumSet<?> groupTypes() {
return EnumSet.allOf(Types.class);
}
而且Types
是enum
象下面這樣:
public enum Types implements GroupType {
ASG;
}
的GroupType
接口是:
public interface GroupType extends NamedType {
}
的NamedType
接口:
public interface NamedType {
String name();
}
編譯時,我得到了下面的錯誤:
error: incompatible types: inference variable E has incompatible bounds
return EnumSet.allOf(Types.class);
^
equality constraints: Types
upper bounds: Enum<CAP#1>,Enum<E>
where E is a type-variable:
E extends Enum<E> declared in method <E>allOf(Class<E>)
where CAP#1 is a fresh type-variable:
CAP#1 extends Enum<CAP#1> from capture of ?