代码语言:javascript复制
public class TestSuper {
public static void main(String[] args){
//new ChildClass().f();//调用这个类的构造方法,与下面两句一个作用
ChildClass f = new ChildClass();
f.f();
}
}
class FatherClass{
public int value;
public void f(){
value=100;
System.out.println("FatherClass.value=" value);
}
}
class ChildClass extends FatherClass{
public int value;
public void f(){
super.f();//这里是调用父类的普通方法
value =200;
System.out.println("ChildClass.value=" value);
System.out.println("value=" value);
System.out.println("super.value=" super.value);//调用父类对象的成员变量
}
}
结果为: FatherClass.value=100 ChildClass.value=200 value=200 super.value=100
①super是直接父类对象的引用。可以通过super来访问父类中被子类覆盖的方法或属性,用super. 属性名/方法名来引用 ②注意,super. 和子类中所使用相同的属性名其内存所在地址不同,独立存值