一、this用法
1.直接引用,this相当于当前类的一个对象。
2.类中成员与构造器或方法的形参重名,this区分,this.x调用当前类成员变量。
3.调用本类的构造函数,this(参数);
二、super用法
1.直接引用,super表示当前对象的父类,用super.x调用父类成员变量。
2.子类成员变量或方法与父类重名,用super区分。
3.调用父类的构造函数,super(参数);
三、注意
1.子类构造方法中调用父类构造方法,super()/this()都必须写在子类构造方法的第一行,否则编译不通过。
2.this和super不能同时出现在一个构造函数里面,因为this必然会调用其它的构造函数,其它的构造函数必然也会有super语句的存在,所以在同一个构造函数里面有相同的语句,就失去了语句的意义,编译器也不会通过。
3.this()和super()都指的是对象,本质上讲,this是一个指向本对象的指针, 然而super是一个Java关键字
4.this可以将自己作为方法参数传递,super不能将自己作为参数传递。
5.this调用构造方法的目的:简化代码。
6.super不能出现在static修饰的方法中,因为static属于类,非对象