<分区>
我正在尝试阅读枚举以更好地理解它们。
从枚举的 javadocs 我得到以下内容:
An enum type is a special data type that enables for a variable to be a set of predefined constants.
对我来说,这听起来很像 final
变量。
- 真正的区别是什么?
- 你什么时候会用一个代替另一个?
- enum 只是一个可以是一组事物的最终变量吗?
<分区>
我正在尝试阅读枚举以更好地理解它们。
从枚举的 javadocs 我得到以下内容:
An enum type is a special data type that enables for a variable to be a set of predefined constants.
对我来说,这听起来很像 final
变量。
最佳答案
区别在于枚举提供类型安全。
让我们使用这个枚举
。
public enum MuEnum {
FIRST("First"), SECOND("Second");
private String value;
MyEnum(String value) {
this.value = value;
}
public String getValue() {
return value;
}
}
考虑以下示例:
public void myMethod(MyEnum parameter) { .. }
在这里,您只能传递 MyEnum
值(FIRST
或 SECOND
),而如果您的方法签名是:
public void myMethod(String parameter) { .. }
您将能够传递一个无效参数(某些 String
,其内容不同于 "First"
或 "Second"
)。
关于java - 枚举和最终变量有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20662018/