java – 为什么Enum被认为比常量更安全?
发布时间:2020-12-15 05:19:18 所属栏目:Java 来源:网络整理
导读:在我们的示例中,我们可以选择定义一个枚举类型,它将限制可能的指定值(即改进的类型安全性): public class OfficePrinter {public enum PrinterState { Ready,OutOfToner,Offline };public static final PrinterState STATE = PrinterState.Ready;}static fi
在我们的示例中,我们可以选择定义一个枚举类型,它将限制可能的指定值(即改进的类型安全性):
public class OfficePrinter { public enum PrinterState { Ready,OutOfToner,Offline }; public static final PrinterState STATE = PrinterState.Ready; } static final char MY_A_CONST = 'a'; 解决方法
想象一下这两个方法签名:
void rawF(char someFlag); void enumF(MyFlags someFlag); 后者更具限制性,因为只允许MyFlags的有效值.在前一种情况下,任何字符都可以传递 – 即使只使用了“常量”中定义的值. 快乐的编码. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |