java - Java中的变量是如何被调用的,这些变量被设置一次但不再设置并且不是最终的?
问题描述
我有几个变量只需要设置一次,但在启动应用程序后再也不需要设置,例如 SCREEN_WIDTH、ARRAY_X_LENGTH、TIME_APP_STARTED 等。
我没有声明这些最终,因为软件将决定分配给它们的值,而不是我手动决定。我将这些单词大写,以便我可以看到没有其他代码会为其分配任何值,只有 1。
这是一种不好的编程习惯吗?如果是,我应该怎么做,我通常只有一个包含所有这些“最终”变量和我的标志的文件,我不喜欢将它们存储在本地。
解决方案
public class myClass{
final int screenWidth;
final int arrayXLength;
final int timeAppStarted;
public myClass(){
screenWidth = getScreenWidth();
arrayXLength = arrayX.length;
timeAppStarted = getTime();
}
}
这没有错 - 您可以在构造函数中为它们分配正确的值。
注意:这些将被分配一个默认值,因此您可能需要检查是否进行了正确的分配。您同样可以声明为 Integer 而不是原始数据类型 int。
推荐阅读
- audio - 编解码器是干什么用的
- javascript - 将值从输入传递到节点 js http 请求参数
- java - 在 kotlin 列表中结束日期后添加值
- html - 如何在 CSS 和 HTML 中对齐表单旁边的文本
- date - 错误消息:AttributeError:“DatetimeProperties”对象没有属性“isocalendar”
- api - 有没有办法以编程方式在snakemake中使用--forcerun功能?
- python - 避免 numpy.stack FutureWarning 的方法?
- repast-hpc - REPAST HPC WSL 安装导致找不到提升
- python - 来自同一列的 Python 多个枢轴
- javascript - 动态生成元标记 - 适用于 Facebook 但不适用于 Twitter 或 Linked in