关于this与super关键字
this可用于实例方法,构造方法
- 在实例方法中使用this关键字调用其他的实例方法或类方法以及属性。
public class employee{
Employees[] employees;
void manageEmployees() {
int totalEmp = this.employees.length;
System.out.println("Total employees: " + totalEmp);
this.report();
}
void report() { }
}
- 在构造方法种使用this()可调用本类的其他构造方法。
当调用构造方法时,this()必须放在代码块的第一行(不包含注释)
注意:this()不可用于静态方法。因为this代表当前对象所调用,静态方法是在类加载时创建的,早于类的实例化。
super关键字
super关键字主要用于 构造方法 实例方法中。
- super.属性 调用父类的属性(除了private修饰的属性)
- super.方法 调用父类的方法
- super() 调用父类的构造函数 super()必须位于第一行
小结:1. this与super类似,两者都是从属于对象的,当用于构造方法时必须位于首行。
2. 都不能用于static方法,static修饰的方法属性都是属于类范畴的,早于对象的加载。