this是自身的一个对象,代表对象本身,可以理解为:指向对象本身的一个指针。
super可以理解为是指向自己超(父)类对象的一个指针,而这个超类指的是离自己最近的一个父类。
this的用法就不累赘的说了,看下面super的用法
package first; public class MySuper {
public static void main(String[] args) {
ChildrenClass cc=new ChildrenClass();
cc.f();
}
} class FatherClass{
public int value;
public void f() {
value=100;
System.out.println("FatherClass.value="+value);
}
} class ChildrenClass extends FatherClass{
public int value;
public void f() {
super.f();
value=200;
System.out.println("ChildrenClass.value="+value);
System.out.println(value);
System.out.println(super.value); }
}
运行结果:
FatherClass.value=100
ChildrenClass.value=200
200
100