我写了我的代码,但现在我试图改变,看看发生了什么。最终静态可以更改吗?
在对象类字段,
static final String msg="here";
而且在同一个对象,在methot
public void givemessage(int no)
{
System.out.println("look.");
System.out.println(msg);
}
在这里它提供了 “这里” 当我从主调用。但是
public void names(String[] names)
{
String msg=" - ";
System.out.println(msg);
}
在这里,当我从主调用它给 - ,而不是“这里”,它是最终的静态。它为什么会改变,为什么没有编译错误?或者我误解了所有的Java?
“names”方法中的局部变量隐藏了静态变量。 – assylias
哦,好的,谢谢大家。我无法通过阅读来学习。 – CursedChico