super与this的区别

this关键字和super关键字的区别

this表示当前对象:
this.属性 区分成员变量和局部变量
this.() 调用本类的某个方法
this() 表示调用本类构造方法,只能用在构造方法的第一行语句。
this关键字只能出现在非static修饰的代码中

super表示父类对象:
super.属性 表示父类对象中的成员变量
super.方法() 表示父类对象中定义的方法
super() 表示调用父类构造方法
可以指定参数,比如super("Tom", 23);
任何一个构造方法的第一行默认是super();
可以写上,如果未写,会隐式调用super();
super()只能在构造方法的第一行使用.

this()和super()都只能在构造的第一行出现,所以只能选择其一。
写了this()就不会隐式调用super()。

你可能感兴趣的:(super与this的区别)