我说下区别吧,代码的话你可以随便找个有this 或 super 的代码看,根据我的写的区别进行分析 我就不写代码了
this关键字
刚开始理解就记住是(当前对象),多用的话就可以体会到具体的用途
操作的是哪个对象,哪个对象就是this。
当前类的引用。
例如在Person类中使用this,那么this就是Person类的引用。
局部变量和属性同名时,必须使用this来引用属性。不使用this前缀表示是局部变量。例如基本的Person类中的有参构造器
在类中使用this,所有部分出现的地方,其实前面都可以加上this。this就是那个整体!
super关键字
就是在子类中访问父类成员的通道
当引用父类属性和父类方法时,而子类中有同名属性或相同方法时,那么就一定要使用super调用语句!
子类构造器,无论如何都会去调用父类构造器(这里指在你没调用父类构造器,会默认调用,)这里可以自己写个父类和子类,子类无参构造不写东西,父类无参构造写个输出语句,来创建子类无参构造证明有没有调用父类、
还要了解下隐式和显示调用父类构造器
1.没有使用this调用语句,也没有使用super调用语句,那么就隐式调用父类的无参构造器。
2.如果使用了this调用语句,就不会隐式调用父类构造器,也不能再加super调用语句。
3.如果加了super调用语句,那么就是显式调用父类构造器,而不是隐式调用了。这时也不能再加this调用语句了。 |