【发布时间】:2016-11-02 18:45:34
【问题描述】:
所以我有一个名为optionType 的字段,我希望它能够采用与某些选项相对应的 4 个不同的整数值。例如 optionType = 0 表示用户想要以某种方式处理某事,optionType = 1 表示另一种方式,等等。
但是数字本身是没有意义的,所以我想在类中定义常量。
public class MyClass {
public static final int OPTION_TYPE_DO_THIS = 0;
public static final int OPTION_TYPE_DO_THAT = 1;
public static final int OPTION_TYPE_DO_SOMETHING_ELSE = 2;
public static final int OPTION_TYPE_DO_COOL_THING = 3;
private int optionType;
....
这样定义所有常量是否被认为是正常的,还是使用像这样的枚举更好
public enum OPTION_TYPE {DO_THIS, DO_THAT, DO_SOMETHING_ELSE, DO_COOL_THING};
或者我应该以某种方式使用 Enum 吗?
【问题讨论】:
-
enum的名称通常在 TitleCase 中,就像任何其他class即OptionType -
我建议使用
Enum,因为作为开发人员,您不需要知道选项的值及其含义,您只需要使用您的枚举需要。 -
@ValterHenrique enum 和 Enum 有区别吗?
-
枚举值是常量,但所有枚举类都是类,应该有正常的类名。
-
所有
enum类都是Enum类的子类