Warum ist es möglich, Instanzvariablen in PHP, aber nicht in Java zu überschreiben?

Betrachten Sie den folgenden Code:

<?php

class Base {
        protected $name = "Base";

        public function getName() {
            return $this->name;
        }
}

class Foo extends Base {
        protected $name = "Foo";
}

$f = new Foo();
echo $f->getName(); // output: Foo

$b = new Base();
echo $b->getName(); // output: Base

Seit in anderen Sprachen wie Java können Sie die Instanzvariable nicht überschreiben, dies ist jedoch in PHP möglich.

Ist es, weil PHP eine schwache Schriftsprache ist, also ist es möglich?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage