gpt4 book ai didi

java - 在声明变量之前使用变量不是错误吗?

转载 作者:行者123 更新时间:2023-11-29 03:29:03 26 4
gpt4 key购买 nike

局部变量在声明点之前的初始化规则是什么?是否可以在声明变量之前使用它?我在这个页面 ( Local Variable Declaration Issue ) 上看到它是非法的,但是当我尝试它时它有效:

public static String toHelp = "--help";
public static void main(String[] args) {
System.out.println(toHelp);
String toHelp = args[0];
}

最佳答案

看评论

public static void main(String[] args) {
System.out.println(toHelp); // using the already initialize static variable
String toHelp = args[0]; // shadowing the static variable with a local variable
}

阴影在 Java Language Specification here. 中有解释。

执行后

String toHelp = args[0];

范围内有两个名为 toHelp 的变量。可以使用名称 toHelp 访问本地的。现在需要使用 ClassName.toHelp 访问类 static 变量,因为它被隐藏了。

关于java - 在声明变量之前使用变量不是错误吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19335155/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com