📜  在Java中为静态最终变量赋值

📅  最后修改于: 2022-05-13 01:55:21.927000             🧑  作者: Mango

在Java中为静态最终变量赋值

在Java中为静态最终变量赋值:
在Java中,可以在构造函数或声明中为非静态最终变量赋值。但是,静态最终变量不能在构造函数中赋值;必须在声明中为它们分配一个值。
例如,以下程序可以正常工作。

Java
class Test {
 
    // i could be assigned a value here
    // or constructor or init block also.
    final int i;
    Test()
    {
        i = 10;
    }
 
    // other stuff in the class
}


Java
class Test {
 
    // Since i is static final,
    // it must be assigned value here
    // or inside static block .
    static final int i;
    static
    {
        i = 10;
    }
 
    // other stuff in the class
}


如果我们将i设为static final那么我们必须通过声明为 i 赋值。

Java

class Test {
 
    // Since i is static final,
    // it must be assigned value here
    // or inside static block .
    static final int i;
    static
    {
        i = 10;
    }
 
    // other stuff in the class
}