this:当前对象
super:父类对象
1. this关键字
例如在有参构造中,成员变量名和形参名是相同时,
this.成员变量名 = 形参名;
用this表示这个名字是当前类的名字。
- this关键字主要应用:
1、this调用本类中的成员变量;
2、this调用本类中的成员方法;
3、this调用本类中的其它构造方法。
2. super关键字
- super可以理解为直接父类对象的引用,或者说super指向子类对象的父类对象存储空间。我们可以通过super来访问父类中被子类覆盖的方法或属性,super的使用和this关键字非常的相似。
区别点 | this | super |
---|---|---|
定义 | this代表本类对象的引用 | super代表父类存储空间 |
使用 | this.属性 this.方法 this() | super.属性 super.方法() super() |
调用构造 | 调用本类构造,放在第一条语句 | 调用父类构造,放在第一条语句 |
查找范围 | 先从本类找,找不到查找父类 | 直接查找父类,不查找子类 |