this和super的区别?
分别是什么呢?
this代表本类对象的引用。
super代表父类存储空间的标识(可以理解为父类引用,可以操作父类的成员)
怎么用呢?
A:调用成员变量
this.成员变量 调用本类的(成员变量,不是局部变量)
super.成员变量 调用父类的(成员变量,不是局部变量)
B:调用构造方法
this(...) 调用本类的构造方法
super(...) 调用父类的构造方法
C:调用成员方法
this.成员方法 调用本类的成员方法
super.成员方法 调用父类的成员方法
输出:
30
20
10
*/
class Father {
public int num = 10;
}
class Son extends Father {
public int num = 20;
public void show() {
int num = 30;
System.out.println(num);
System.out.println(this.num);
System.out.println(super.num);
}
}
class ExtendsDemo5 {
public static void main(String[] args) {
Son s = new Son();
s.show();
}
}
《java入门第一季》之面向对象面试题(this和super的区别)
最新推荐文章于 2021-06-25 19:35:48 发布