在运行时声明常量(Java)?

thu*_*nja 3 java

嘿伙计我有一个简单的问题.我正在读取文件并根据我从文件中读取的内容设置值.

我的问题是:如果我想从文件中声明一个检索到的值作为常量,我该怎么做?

编辑:为简单起见,说该值为"int".

Mat*_*all 8

我不认为你在寻找final关键字?

final int foo = /* get it from the file */;
Run Code Online (Sandbox Code Playgroud)


Ern*_*ill 5

不确定此变量的范围.就创建常量而言,"final"关键字是您必须使用的所有关键字.根据运行时数据定义最终的本地或实例变量很容易,但声明一个静态的最终类成员更难; 在加载和初始化类时,您必须具有可用值,因此您必须在静态初始化程序块中以某种方式执行此操作:

public static final int CONSTANT;
static {
    CONSTANT = <something!>;
}
Run Code Online (Sandbox Code Playgroud)