将静态方法中的变量声明为静态时给出错误(编译时错误)。 我的代码在这里: -
public class MainStatic {
public static void main(String[] args) {
System.out.println("Value of static variable is"+print(10));
}
public static void print(int number ) {
static int x = number;
++x;
System.out.println(x);
}
}
我收到编译时错误: - "参数x的非法修饰符;只允许决赛#34; 由于静态方法不依赖于类的实例,为什么我不能在静态方法中声明静态变量? 但是如果我在方法中声明类中的变量吗?
答案 0 :(得分:3)
仅在调用时存在局部变量。静态不会影响它们。
答案 1 :(得分:1)
静态变量属于该类,并且可以由根据变量的访问修饰符允许的任何人修改。本地方法变量仅存在于方法中(以及在执行期间),并且此方法之外的任何人都无法访问。这根本没有意义。