this:
1、this代表当前对象,this关键字可以访问本类中的实例变量,本类中的实例方法以及本类中的其他构造方法
2、this关键字可以访问父类中的实例变量(成员变量)和父类中的实例方法
3、如果使用this关键字访问实例变量或实例方法时,先在当前类中找,如果没有找到再到父类中找
4、如果没有局部变量和实例变量重名,在当前类中使用实例变量时可以直接使用,默认前面添加this
5、在当前类中访问实例方法时,可以直接编写方法名称([参数列表]); 默认前面添加this
super
1、super表示父类或者超类,super关键字只能在子类中使用
2、super关键字可以访问父类中的实例变量、实例方法和构造方法
3、当使用super关键字访问父类中的实例变量或实例方法时,直接去父类中找,因此使用super访问父类中的实例变量或实例方法时,相对查找速度快或者执行效率高
注意
1、如果子类重写父类的方法,在子类中调用父类的方法时,只能编写为super.方法名([参数列表]);如果使用this.调用方法,就是递归调用
2、在子类中使用super关键字可以调用父类的构造方法,如果小括号中没有内容,则调用父类的无参构造方法,如果小括号中有内容,则执行父类的带参构造方法
3、如果使用super关键字访问父类的构造方法时,只能编写构造方法中并且是第一条语句