[英]why in java static final variable in interface can be overridden by a local var?
[英]Why can't I create static final variable in psvm Java?
它不会编译,但是当我将变量的初始化放在主要方法之外时就可以了。
public class Demo {
public static void main(String[] args) {
static final int x = 2;
System.out.println(x);
}
}
static final int x = 2;
局部变量不能是静态的,这就是编译器抱怨的原因
static
修饰符是谁在这里引起问题。 由于明显的原因,您不能将局部变量static
。
不能将局部变量声明为private,public,protected或static ,请删除static
关键字。
加载类时将加载static
变量。 但是在调用方法时(在类加载之后),将加载局部变量。 因此,当类被加载时,那时将不会创建局部变量
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.