在PHP 中,一個常見的任務是從父類別中呼叫子類別中定義的函數。考慮以下範例:
class whale
{
public function __construct()
{
// some code here
}
public function myfunc()
{
// How do I call the "test" function of the fish class here?
}
}
class fish extends whale
{
public function __construct()
{
parent::__construct();
}
public function test()
{
echo "So you managed to call me !!";
}
}
一種解決方案是利用抽象類,它定義必須透過繼承類別實現的基本功能。這是修改後的程式碼:
abstract class whale
{
public function __construct()
{
// some code here
}
public function myfunc()
{
$this->test();
}
abstract public function test();
}
class fish extends whale
{
public function __construct()
{
parent::__construct();
}
public function test()
{
echo "So you managed to call me !!";
}
}
$fish = new fish();
$fish->test();
$fish->myfunc();
透過此修改,您可以透過呼叫$this->test()從whale類別的myfunc函數呼叫fish類別的test函數。這種方法確保子類別必須實作測試功能。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3