Heim >Backend-Entwicklung >PHP-Tutorial >Zusammenfassung mehrerer Aspekte der objektorientierten Vererbung in PHP
Dieser Artikel fasst hauptsächlich mehrere Punkte zusammenPHP objektorientiertErbt :
//people.class.php class People{ private $name; private $sex; private $birthday; private function construct($name='',$sex='01',$birthday='1999-01-01'){ echo 'people---construct<br>'; $this->name = $name; $this->sex = $sex; $this->birthday = $birthday; } public function get($key){ return $this->$key; } public function set($value,$key){ $this->$key = $value; } public function show(){ return 'people---'; } }
//student.class.php class Student extends People{ private $s_num; private $s_class; public function construct($name,$sex,$birthday,$num,$class){ //parent::construct($name,$sex,$birthday); echo 'Student--construct<br>'; $this->name = $name; $this->sex = $sex; $this->birthday = $birthday; $this->s_num = $num; $this->s_class = $class; } public function showInfo(){ return 'sutdent---'.$this->name.'----bir='.$this->birthday .'num=='.$this->s_num.'----class=='.$this->s_class; } }
Die beiden oben genannten Klassen, Student, erben die People-Klasse
Die Konstruktormethode der übergeordneten Klasse ist privat. Dies bedeutet, dass diese Klasse in Java nicht vererbt werden kann, in PHP jedoch zwar vererbt werden kann, eine Sache jedoch darin besteht, dass der Konstruktor der übergeordneten Klasse nicht in der Unterklasse Student
parent::construct($name,$sex,$birthday);
Andernfalls wird ein Fehler gemeldet. Wenn der Konstruktor der übergeordneten Klasse privat ist, muss die Unterklasse über einen eigenen Konstruktor verfügen klar geschrieben, sonst kann die Vererbung nicht erreicht werden.
Gleichzeitig besteht der Unterschied zu Java darin, dass eine Unterklasse eine übergeordnete Klasse erbt und die Unterklasse einen eigenen Konstruktor hat , der übergeordnete Konstruktor einer Klasse wird nur ausgeführt, wenn er vom Konstruktor einer Unterklasse aufgerufen wird.
Das obige ist der detaillierte Inhalt vonZusammenfassung mehrerer Aspekte der objektorientierten Vererbung in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!