我们知道类的组成是成员变量,构造方法,成员方法
1. this代表本类对应的引用。输出本类成员范围的num
2. super代表父类存储空间的标识(可以理解为父类引用,可以操作父类的成员)。 输出父类成员范围的num
用法:
A:调用成员变量
this.成员变量 调用本类的成员变量
super.成员变量 调用父类的成员变量
B:调用构造方法
this(...) 调用本类的构造方法
super(...) 调用父类的构造方法
C:调用成员方法
this.成员方法 调用本类的成员方法
super.成员方法 调用父类的成员方法
在子类方法中访问一个变量的查找顺序: //通过子类对象调用变量就没有第一步了(在子类方法找).
1.子类中的成员变量和父类中的成员变量名称不一样时。 【分别调用】
2.子类中的成员变量和父类中的成员变量名称一样时。 【默认就近原则】
//在[子类方法]的局部范围找,
//在[子类]的成员范围找,
//在[父类]的成员范围找,如果还找不到,就报错。
使用super关键字可以打破就近原则,直接指定想访问的父类成员变量。--->一般通常是在子类方法中发生。
子类方法中调用变量:
1. int num1 = super.num; //将父类的num变量赋值给子类的num1变量;子类对象调用s.num1
2.
public void show(){
Syste,.out.println