Eclipse剪贴簿中的枚举

时间:2013-02-25 23:59:45

标签: java eclipse enums eclipse-juno jpage

不确定这是一个错误还是我有点疯狂..我试图在Eclipse jpage Scrapbook中使用JDK 1.7.0_02,Win XP 64位,Eclipse Juno快速测试枚举

class A {
    enum Month {JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC}
}
A a = new A();

当我尝试执行此操作时,我得到:

  

成员枚举月只能在顶级类或接口

中定义

如果我将枚举移出类定义,就会发生这种情况。

enum Month {JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC}
Month.valueOf("JAN");

这些是我上面得到的错误:

  

成员枚举月只能在顶级类或接口

中定义      

月份无法解决

2 个答案:

答案 0 :(得分:1)

我认为这样做的唯一方法是将enum本身从jpage中移到一个新类中。所以我就这样开课:

package test;
public class Test {
   public enum Month {
      JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC;
   };
}

然后在jpage:

  1. 右键单击并选择“设置导入”
  2. 点击“添加套餐”,然后输入/选择测试包。
  3. 然后我的jpage将只有以下代码:

    Test.Month.valueOf("JAN");
    

答案 1 :(得分:0)

好吧,对不起,如果我要说的是有点愚蠢,但是你不应该把enum声明为A级的公共成员吗?类中的枚举本质上是静态的,但不是公共的。在您的第一个示例中,如果您尝试将其声明为公开会发生什么?