Java-super的一些想法

2019-07-30 17:36:38 浏览数 (1)

代码语言: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. 和子类中所使用相同的属性名其内存所在地址不同,独立存值

0 人点赞