【99、this 和 super 的区别】

54 阅读1分钟

在 Java 中,thissuper 都是关键字,表示当前对象和父类对象。

this 关键字可以用于以下几种情况:

  • 引用当前对象的成员变量,方法和构造方法,用于区分局部变量和成员变量重名的情况;
  • 调用当前类的另外一个构造方法,语法为 this()
  • 作为方法的返回值,表示当前对象;
  • 作为方法的参数传递给其他方法。

super 关键字通常用于以下几种情况:

  • 调用父类的构造方法,语法为 super()
  • 引用父类的成员变量和方法,用于区分子类和父类成员变量或方法重名的情况;
  • 作为方法的返回值,表示父类对象;
  • 作为方法的参数传递给其他方法。

因此,this 关键字主要用于区分同名的局部变量和成员变量,或者在构造方法中调用其他构造方法,而 super 关键字主要用于调用父类构造方法或者父类的成员变量和方法。