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
实例,但这并不理想
你可以在下面搜索框中键入要查询的问题!
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 楼答案
不,这是不可能的,因为C和B是完全不同的,完全没有关系
只有父类引用才能保存子类对象。B&;C没有那种关系。所以,这是不可能的