在Java中,父類對象無法直接調用子類的方法,因為父類對象只能訪問父類中的成員和方法。如果想要調用子類的方法,可以通過以下幾種方式實現:
ParentClass parent = new ChildClass();
parent.childMethod();
abstract class ParentClass {
public abstract void childMethod();
}
class ChildClass extends ParentClass {
@Override
public void childMethod() {
// 子類方法的實現
}
}
ParentClass parent = new ChildClass();
parent.childMethod();
class ParentClass {
public void parentMethod() {
// 父類方法的實現
}
}
class ChildClass {
public void childMethod(ParentClass parent) {
parent.parentMethod();
}
}
ParentClass parent = new ParentClass();
ChildClass child = new ChildClass();
child.childMethod(parent);
需要注意的是,通過父類對象調用子類方法時,必須確保父類對象引用的是一個實際上是子類對象的對象。如果父類對象引用的是一個父類對象,那么調用子類方法會引發編譯錯誤或運行時錯誤。