class Duck {
public function quack() {
$this->swim();
}
public function swim() {
echo 'I\'m swimming!';
}
}
class Plane {
public function fly() {
Duck::quack();
}
public function swim()
{
echo 'I can\'t swim! People are DROWNING!';
}
}
$plane = new Plane();
$plane->fly();
私は上記の質問をされ、出力が静的メソッドを不正に呼び出すエラーであるという答えを出しました。
しかし、実際には「私は泳いでいます!」と印刷されます。
なぜこれが起こるのか誰かが説明してもらえますか?