您的位置:首页 > 其它

父类引用指向子类对象

2009-03-20 20:28 260 查看
父类Father.java

public class Father {
public String str = "Father";

static void doOtherthing() {
System.out.println("Father : doOtherthing()");
}
public void doSomething() {
System.out.println("Father : doSomething()");
}
}


子类Son.java

public class Son extends Father {
public String str = "Son";

static void doOtherthing() {
System.out.println("Son: doOtherthing()");
}
public void doSomething() {
System.out.println("Son: doSomething()");
}
}


 

Father f = new Son();

f指向Son实例中的super。

System.out.println(f.str);

这句将打印出 Father 而不是 Son,因为属性不会被override。

f.doOtherthing();

这句将打印出 Father : doOtherthing 而不是 Son : doOtherthing,因为static方法不会被override。

f.doSomething();

这句将打印出 Son : doOtherthing 而不是 Father : doOtherthing,因为方法被子类override了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  string class