在 Java 中使用内部类 - 枚举
2022-09-03 10:08:54
我有一个非常具体的问题,与内部类有关。让我向您展示一些示例代码:
class Foo {
MYOPTIONS temp;
public static enum MYOPTIONS {
OPTION1, OPTION2, OPTION3;
}
}
所以这个枚举在类 Foo 内部。现在我想做的是将 temp 变量设置为三个选项之一,但在类 Foo 之外执行此操作,假设从一个名为 External 的类中。不幸的是,我不能有一个集合方法来做到这一点,因为它是无效的,因为枚举在类外部中不可见。因此,我唯一能想到的就是在Foo类中使用三种方法:External.setTemp (MYOPTIONS.OPTION1)
public void setTempOption1 () {this.temp=MYOPTIONS.OPTION1;}
public void setTempOption2 () {this.temp=MYOPTIONS.OPTION2;}
public void setTempOption3 () {this.temp=MYOPTIONS.OPTION3;}
显然,另一种选择是更改枚举,而不是将其作为内部类。我错过了其他选择吗?谢谢