在接口内部实现枚举 - Java

16 浏览
0 Comments

在接口内部实现枚举 - Java

我对在接口中放置Java枚举有一个问题。

为了更清楚,请看下面的代码:

public interface Thing{
   public enum Number{
       one(1), two(2), three(3);
       private int value;
       private Number(int value) {
            this.value = value;
       }
       public int getValue(){
        return value;
       }
   }
   public Number getNumber();
   public void method2();
   ...
}

我知道接口由具有空方法体的方法组成。然而,我在这里使用的枚举需要一个构造函数和一个获取关联值的方法。在这个例子中,所提议的接口将不仅仅由空方法体组成。这个实现是否被允许?

我不确定我应该将枚举类放在接口中还是实现这个接口的类中。

如果我将枚举放在实现这个接口的类中,那么方法public Number getNumber()需要返回枚举的类型,这将迫使我在接口中导入枚举。

0