那不是全局变量,而是实例变量。只需使用this
:
String s = "Local";
lblB.setText(this.s);
(有关的含义,请参见JLS第15.8.3节this
。)
对于 静态 变量(人们在谈论全局变量时通常指的是 静态 变量),您可以使用类名来限定变量名:
String s = "Local";
lblB.setText(ClassDeclaringTheVariable.s);
在大多数情况下,我宁愿不要使用与实例或静态变量同名的局部变量,但值得注意的例外是构造函数和设置器,这两者通常都有意义,它们的参数与实例变量同名:
public class Person {
private String name;
public Person(String name) {
this.name = name;
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
}