编写Java程序,当成员变量与局部变量重名时,输出成员变量的值。
实例的运行结果如图1所示。
图1 TestVariabel类的运行结果
l 当成员变量与局部变量名称相同时,成员变量将被隐藏。
l 当成员变量被隐藏时,可以使用“this.”作为前缀来访问成员变量。
创建TestVariable类,名称为TestVariable.java,在该类中,首先定义一个名称为a的成员变量,然后定义printStr()方法,在该方法中,再定义一个名称为a的局部变量,并且输出局部变量a和成员变量a的值,最后在main()方法中,实例化TestVariable类的对象,并调用printStr()方法。TestVariable类的完整代码如下:
public class TestVariable {
private int a = 100; // 定义成员变量
public void printStr() {
int a = 1000; // 定义局部变量
System.out.println("局部变量:" + a); // 输出局部变量的值1000
System.out.println("成员变量:" + this.a); // 用this关键字输出成员变量的值100
}
public static void main(String[] args) {
TestVariable tv = new TestVariable();
tv.printStr(); //调用printStr()方法
}
}