假设以下代码:
enum Color {
RED,
GREEN,
BLUE
enum Type {
RGBA,
RGB,
BGR
}
String getHex() {
//something here
return "#F00"
}
Type getType() {
//something here
return Type.RGB
}
}
println Color.RED.type.name()
我认为嵌套enum
是可能的,但如果你尝试用groovy运行这段代码(使用2.4.13),它似乎永远循环,它永远不会执行或编译它。
如果我将枚举Type
放在外面,它可以正常工作。
为什么会这样?是否有任何参考资料可以解释它失败的原因?
答案 0 :(得分:4)
这是一个已知的错误
https://issues.apache.org/jira/plugins/servlet/mobile#issue/GROOVY-4438
如果你使用新的" parrot"它是固定的。解析器,在Groovy 2.6+中是可选的,默认情况下在Groovy 3中启用