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