this和super有什么区别

参考答案

1. 指代不同

  • super:是当前对象里面的父对象的引用。
  • this:指的是当前对象的引用。

2. 调用函数不同

  • super:调用基类中的某一个构造函数(应该为构造函数中的第一条语句)。
  • this:调用本类中另一种形成的构造函数(应该为构造函数中的第一条语句)。

3. 引用对象不同

  • super:引用当前对象的直接父类中的成员(用来访问直接父类中被隐藏的父类中成员数据或函数,基类与派生类中有相同成员定义时,例如:super.变量名 ,super.成员函数据名)。
  • this:代表当前对象名(在程序中易产生二义性之处,应使用this来指明当前对象。如果函数的形参与类中的成员数据同名,这时需用this来指明成员变量名)。

以上,是Java面试题【 this和super有什么区别】的参考答案。

输出,是最好的学习方法

欢迎在评论区留下你的问题、笔记或知识点补充~

—end—

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧