わかりにくいPHPの継承問題!
クラス B
{
public $name ="aaa";
関数 fb()
{
echo get_class($this),"";
echo $this->name,"";
}
}
クラス Eb は B
を拡張します
{
public $name = "xxxxxxxxxxxxxxsylar";
関数 __construct()
{
parent::fb();
}
}
$eb = new Eb();
// 親クラスとサブクラスの $name が両方とも public として宣言されている場合、Eb のコンストラクターが実行されると、出力結果はサブクラスの $name の値 xxxxxxxxxxxxxxsylar
// 親クラスとサブクラスの $name が両方とも private として宣言されている場合、Eb のコンストラクターを実行し、出力結果はサブクラス aaa
の $name の値になります。
解決策をお探しですか?
PHP、継承