在Java中,我们使用final关键字和变量来指定它的值不被改变。但是我发现你可以改变类的构造函数/方法中的值。再次,如果变量是static那么这是一个编译错误。这里是代码:
import java.util.List;
private final List foo;现在改变变量为static:
private static final List foo;
我的问题是关于static关键字的一种特殊用法。可以使用static关键字覆盖不属于任何函数的类中的代码块。例如,编译以下代码: private static final int a; a = 5;doSomething(a); private static int doSomething(int x) { }如果删除static<