【发布时间】:2014-12-20 16:03:48
【问题描述】:
我已经给出了一个枚举 ABC 和一个类 Test,我必须调用 doSomething 但我不能将 ABC 枚举作为参数传递。
enum ABC{
A,B,C;
}
Class Test{
public void doSomething(ABC abc)
{
//some work
}
}
在这里,我想要一个枚举 DEF,它应该具有 ABC 的所有成员,并且它还应该具有枚举 XYZ 的成员(我想要一个枚举 DEF,它应该包含两个枚举(ABC 和 XYZ)的成员)。像这样的例子。
enum DEF
{
A,B,C,X,Y,Z,D;
}
enum xyz{
X,Y,Z;
}
这样我就可以调用只接受 ABC 枚举作为参数的 doSomething 方法。我想用 DEF.Example 调用 doSomething() 方法
class Demo{
public static void main(String[] ags)
{
Test test= new Test();
test.doSomething(DEF.A);
}
}
我更新鲜了。请向我提供任何帮助或建议。我将不胜感激。
【问题讨论】:
-
您不能扩展
enums。但是,您可以使用方法doSomething()创建接口MyInterface,然后使ABC和XYZ都实现MyInterface。这样你就可以在六个enum常量中的任何一个上调用doSomething()。
标签: java inheritance enums