我可以使用Java在另一个枚举中添加枚举吗?
我可以在其他枚举中添加枚举吗?例如:我可以使用Java在另一个枚举中添加枚举吗?,java,enums,Java,Enums,我可以在其他枚举中添加枚举吗?例如: public enum Enum1 { VALUE1; } public enum Enum2 { Enum1, VALUE2; } 注意:我已经知道您可以这样做: public enum Action { FOO, BAR; enum MOVE { UP, DOWN, LEFT, RIGHT } } 这是可能的,但Enum2中的Enum1只是常量,与Enum
public enum Enum1 {
VALUE1;
}
public enum Enum2 {
Enum1,
VALUE2;
}
注意:我已经知道您可以这样做:
public enum Action
{
FOO,
BAR;
enum MOVE
{
UP,
DOWN,
LEFT,
RIGHT
}
}
这是可能的,但Enum2中的Enum1只是常量,与Enum1 enum没有任何依赖关系,但是您可以使用如下内容:
public enum Enum1 {
VALUE1;
}
public enum Enum2 {
VALUE1 (Enum1.VALUE1),
VALUE2 (null);
private final Enum1 enum1;
Enum2(com.github.vedenin.services.image.filter.Enum1 enum1) {
this.enum1 = enum1;
}
public Enum1 getEnum1() {
return enum1;
}
}
可能重复您的第一个代码是没有意义的,因为枚举标识符必须是一个标识符,就像任何其他标识符一样,并且建议-您试图解决什么问题?您已经知道该代码不可编译,因此您知道它是不合法的。@killjoy我不想扩展枚举,我只想让它像另一个属性一样。您的可能重复可能会使它们实现相同的接口以增强功能
public enum Enum1 {
VALUE1;
}
public enum Enum2 {
VALUE1 (Enum1.VALUE1),
VALUE2 (null);
private final Enum1 enum1;
Enum2(com.github.vedenin.services.image.filter.Enum1 enum1) {
this.enum1 = enum1;
}
public Enum1 getEnum1() {
return enum1;
}
}