public class Test18 {
public static void main(String[] args) {
Fu z = new Zi();
z.show();
}
}
class Fu
{
int x =2;//该变量只作用于父类
public void show()
{
int x=3;//局部变量在作用于方法内
System.out.println(x);此处x=3
System.out.println(this.x);//调用的是该类的成员变量,此处的x=2
}
}
class Zi extends Fu
{
int x =4;//该变量只作用于子类中
public void show()
{
int x=3;//局部变量只作用于方法中
System.out.println(x);
System.out.println(super.x);//调用的是父类的成员变量,注:当父类和子类有相同的变量名时,通过super和this来区分
System.out.println(this.x);//调用的是该类的成员变量
}
}
输出结果是
3
2
4 |