this: 是一种引用类型,代表的是当前的对象,类似于数组,保存的是当前对象的地址 = = 数组变量存储的也是地址
注意: 哪一个对象调用this所在的方法,this就代表当前的对象。
class A{
String name;
public A(){
}
public A(String name){
this.name = name;
}
public void print(){
System.out.println("this.name = "+this.name); //即使this不写,name 这里也会默认前面是由this的
}
public static void main(String[] args){
A a = new A("nihao");
a.print(); //此时this 代表 a对象 存储的是a对象的地址
}
}
super: 代表的是当前对象的父类,可以调用父类的方法和行为。但是它不是引用数据类型。
class Student {
public void work() {
System.out.println("学生在学习");
}
}
class Monitor extends Student {
@Override
public void work() {
super.work(); // 调用父类的实现
System.out.println("班长收作业");
}
}