为什么可以';我是否在psvm Java中创建静态最终变量?
它不会编译,但当我将变量的初始化放在main方法之外时,它就可以了为什么可以';我是否在psvm Java中创建静态最终变量?,java,oop,Java,Oop,它不会编译,但当我将变量的初始化放在main方法之外时,它就可以了 public class Demo { public static void main(String[] args) { static final int x = 2; System.out.println(x); } } 静态最终整数x=2局部变量不能是静态的,这就是为什么编译器抱怨静态的修饰符是造成问题的原因。 由于明显的原因,您不能将局部变量设置为静态。局部变量不能声
public class Demo {
public static void main(String[] args) {
static final int x = 2;
System.out.println(x);
}
}
静态最终整数x=2代码>局部变量不能是静态的,这就是为什么编译器抱怨静态的修饰符是造成问题的原因。
由于明显的原因,您不能将局部变量设置为静态。局部变量不能声明为私有、公共、受保护或静态,请删除静态
关键字。静态
变量是在加载类时加载的。但在调用方法时(类加载后)会加载局部变量。
所以当类被加载时,局部变量将不会在那个时候被创建。我不知道局部变量不能是静态的