test.php的
class AClass {
public function __construct()
{
echo '<strong style="color:blue;">AClass construct</strong><br>';
}
public function call()
{
$this->koko();
}
private function koko()
{
echo 'koko <br>';
}
}
class BClass extends AClass {
public function __construct()
{
echo '<strong style="color:red;">BClass construct</strong><br>';
parent::__construct();
}
public function momo()
{
echo 'momo <br>';
}
}
$xxx = new AClass(); // Output: AClass contruct ..... (where is BClass echo ?)
$xxx->call(); // Output: koko
$xxx->momo(); // Output: Fatal error: Call to undefined method AClass:momo()
Run Code Online (Sandbox Code Playgroud)
也许是新问题但......有什么问题?
你得到了错误的方向..如果ClassB扩展了ClassA,ClassB继承了ClassA的所有内容,而不是其他方式.所以你必须按如下方式编写代码:
$xxx = new BClass();
$xxx->call();
$xxx->momo();
Run Code Online (Sandbox Code Playgroud)