小编Vat*_*ash的帖子

EnumSet 作为泛型接口中的参数

我有一个用例:

inteface A{
  get(EnumSet<?> fetchModes);
}
class B implements A{

  //Here FetchMode is an enum
  get(EnumSet<FetchMode> fetchMode){
   //Some logic here
  }
}
Run Code Online (Sandbox Code Playgroud)

但它抛出编译时错误:

类 B 的方法 get 与类型 A 的 get(EnumSet fetchMode) 具有相同的擦除,但不会覆盖它。

我读过 Enums 不能是通用的,但是有什么方法可以实现这个用例吗?(基本上希望 EnumSet 是通用的,不同的实现可以传递不同的 Enum)

java generics inheritance enums enumset

0
推荐指数
1
解决办法
189
查看次数

标签 统计

enums ×1

enumset ×1

generics ×1

inheritance ×1

java ×1