首页 > 解决方案 > Java中的变量是如何被调用的,这些变量被设置一次但不再设置并且不是最终的?

问题描述

我有几个变量只需要设置一次,但在启动应用程序后再也不需要设置,例如 SCREEN_WIDTH、ARRAY_X_LENGTH、TIME_APP_STARTED 等。

我没有声明这些最终,因为软件将决定分配给它们的值,而不是我手动决定。我将这些单词大写,以便我可以看到没有其他代码会为其分配任何值,只有 1。

这是一种不好的编程习惯吗?如果是,我应该怎么做,我通常只有一个包含所有这些“最终”变量和我的标志的文件,我不喜欢将它们存储在本地。

标签: java

解决方案


public class myClass{
    final int screenWidth;
    final int arrayXLength;
    final int timeAppStarted;

    public myClass(){
        screenWidth = getScreenWidth();
        arrayXLength = arrayX.length;
        timeAppStarted = getTime();
    }
}

这没有错 - 您可以在构造函数中为它们分配正确的值。

注意:这些将被分配一个默认值,因此您可能需要检查是否进行了正确的分配。您同样可以声明为 Integer 而不是原始数据类型 int。


推荐阅读