作者热门文章
- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
假设您需要定义一个类,它所做的只是保存常量。
public static final String SOME_CONST = "SOME_VALUE";
这样做的首选方法是什么?
我应该使用哪一个?为什么?
枚举 - 我不会使用枚举,我不会枚举任何东西,只是收集一些彼此不相关的常量。
接口(interface) - 我不会将任何类设置为实现接口(interface)的类。只想使用接口(interface)调用常量,像这样:ISomeInterface.SOME_CONST
。
最佳答案
使用最终类,并定义一个私有(private)构造函数来隐藏公共(public)构造函数。
为简单起见,您可以使用静态导入在另一个类中重用您的值
public final class MyValues {
private MyValues() {
// No need to instantiate the class, we can hide its constructor
}
public static final String VALUE1 = "foo";
public static final String VALUE2 = "bar";
}
在另一个类(class):
import static MyValues.*
//...
if (VALUE1.equals(variable)) {
//...
}
关于java - 如何在 Java 中定义一个常量类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/479565/
我是一名优秀的程序员,十分优秀!