Eine Klasse kann die Methoden und eigenschaften einer (und nur einer) anderen Klasse erben.
class MySimpleClass { //Eigenschaften public $var = 'Mein Wert'; //Methode public function myMethod() { echo $this->var; } } class MySpecialClass extends MySimpleClass { //Methode myMethod() überschreiben public function myMethod() { parent::myMethod(); //Zugriff auf überschrieben Funktion mit parent:: echo 'ist Pizza Speciale.'; } } $special = new MySpecialClass(); $special->myMethod();
- Wenn eine Klasse oder Methode (nicht Eigenschaft!) mit final (Bsp.: final class MySimpleClass) gekennzeichnet ist, wird extends nicht funktionieren.
- Überschriebene Eigenschaften und Methoden können keine geringere Sichtbarkeit haben (Bsp.: die vererbte Funktion methodA() hat die Sichtbarkeit public, dann kann diese nicht mit einer private methodA() überschrieben werden.)
Kommentare sind geschlossen, aber Trackbacks und Pingbacks sind möglich.