是否可能有类似的东西:MyClass <t extends =“”enum <t =“”>:实现IMyInterface&gt; </t>

时间:2014-12-11 09:11:57

标签: java interface enums

我希望有一个抽象类,它依赖于扩展T的泛型参数Enum<T>。问题是,我希望enum也实现一个接口。是否有可能写出类似的内容?

public interface IMyInterface {
  // ..
}

public enum MyEnum implements IMyInterface {
  // ..
}

public abstract class MyClass<T extends Enum<T> : implements IMyInterface> {
  // ..
}

2 个答案:

答案 0 :(得分:2)

我相信以下内容应该有效:

<T extends Enum<T> & IMyInterface>

答案 1 :(得分:0)

你不应该这样说。因为extends是泛型中使用的扩展和实现的关键。

你可以这样说

   public abstract class sdfsadf<T extends Enum<? extends IMyInterface>> {
   }

这里的T将是枚举,它将实现IMyInterface。