如何将子类实例分配给实现相同接口的Enum项?

时间:2018-03-12 05:07:39

标签: java

interface A {}
class B implements A{}
enum C implements A {
  ITEM_A,
  ITEM_B,
  // Can I do something like `ITEM_C = new B()`?
}

我可以让enum保留对A实例的引用,而不是implements实例,但这并不理想。

1 个答案:

答案 0 :(得分:1)

没有。这不能完成,因为C和B彼此完全不同而且根本不相关

只有父类引用可以包含子类对象。 B& C没有这种关系。所以,这是不可能的。