回覆列表
-
1 # 使用者1159487415053
-
2 # 使用者6057070978277
無解,除非是靜態public方法,function前加static,可以testB::demo2()這樣呼叫
子類重寫之後的方法父類沒法呼叫,換句話說,父類咋知道自己會被哪個子類繼承呢,就算你強轉虛表也不一樣,無解的問題
而且父類咋需要呼叫子類的方法呢,就算你以後實踐中有這樣的需求,也只能說明你設計上不合理
php父類呼叫子類方法,參考如下:<?php/** * 父類呼叫子類方法 基類 * @author ikmb * */class BaseApp{/** * 呼叫子類方法 */function _run_action() { $action = "index"; $this->$action(); }} class DefaultApp extends BaseApp{/** * 此方法將在父類中呼叫 */function index() { echo "DefaultApp->index() invoked"; } function Go(){//呼叫父類parent::_run_action();}}$default=new DefaultApp();$default->Go();//將顯示DefaultApp->index() invoked?>