能够修改java中的最终值吗?

时间:2011-12-23 16:02:26

标签: java

在java中我知道 final 变量值无法更改。请参阅以下程序,并帮助我更改最终值。

public class MainClass {

    final static int name=123;
    public static void main(String[] args) {
        System.out.println(name+123);
    }
} 

输出是246 **

谢谢!

6 个答案:

答案 0 :(得分:8)

您正在打印name+123而非name字段name未发生变化。

答案 1 :(得分:5)

System.out.println(name+123);
System.out.println(name); // run it again with this line

答案 2 :(得分:4)

name的值未更改,为输出创建了临时值。 试试

name += 123;

它将无法编译。

答案 3 :(得分:0)

最终值不会改变。 java刚刚算术System.out.println(name+123);是246。

之后运行System.out.println(name);应为123

答案 4 :(得分:0)

当您致电name时,您实际上并未修改System.out.println(name+123)的值。

如果您在此之后打印name的值,您会看到它仍为123.

System.out.println(name);    // prints 123

答案 5 :(得分:0)

您不会更改最终变量,而是使用123的总和打印它。名称的值为123,它与123相加然后显示。

想象一下第三个变量构建运行时,据说包含名称 123 的总和,然后据说打印它。

在此下方再添加一行:

System.out.println(name); // This would print your variable's current value