⊗ppOpIhOI 36 of 107 menu

Der instanceof-Operator und Vererbung in OOP in PHP

Lassen Sie uns die Besonderheiten der Vererbung bei der Verwendung des Operators instanceof untersuchen. Nehmen wir an, wir haben eine Elternklasse und eine Kindklasse:

<?php // Elternklasse: class ParentClass { } // Kindklasse: class ChildClass extends ParentClass { } ?>

Erstellen wir ein Objekt der Kindklasse:

<?php $obj = new ChildClass; ?>

Prüfen wir nun mit Hilfe von instanceof, ob unser Objekt zur Klasse ParentClass und zur Klasse ChildClass gehört:

<?php var_dump($obj instanceof ChildClass); // gibt true aus var_dump($obj instanceof ParentClass); // gibt auch true aus ?>

Wie Sie an dem Beispiel sehen - macht der Operator instanceof beim Prüfen keinen Unterschied zwischen Eltern- und Kindklassen.

Verwechseln Sie es nicht - wenn das Objekt tatsächlich von der Elternklasse ist, dann wird die Prüfung auf Zugehörigkeit zur Kindklasse natürlich false zurückgeben:

<?php $obj = new ParentClass; // Objekt der Elternklasse var_dump($obj instanceof ParentClass); // gibt true aus var_dump($obj instanceof ChildClass); // gibt false aus ?>

Erstellen Sie eine Klasse User mit öffentlichen Eigenschaften name und surname.

Erstellen Sie eine Klasse Employee, die von der Klasse User erbt und eine Eigenschaft salary hinzufügt.

Erstellen Sie eine Klasse City mit öffentlichen Eigenschaften name und population.

Erstellen Sie 3 Objekte der Klasse User, 3 Objekte der Klasse Employee, 3 Objekte der Klasse City und schreiben Sie diese in beliebiger Reihenfolge in ein Array $arr.

Durchlaufen Sie das Array $arr mit einer Schleife und geben Sie auf dem Bildschirm die Spalte der Eigenschaften name derjenigen Objekte aus, die zur Klasse User oder einem Nachkommen dieser Klasse gehören.

Durchlaufen Sie das Array $arr mit einer Schleife und geben Sie auf dem Bildschirm die Spalte der Eigenschaften name derjenigen Objekte aus, die nicht zur Klasse User oder einem Nachkommen dieser Klasse gehören.

Durchlaufen Sie das Array $arr mit einer Schleife und geben Sie auf dem Bildschirm die Spalte der Eigenschaften name derjenigen Objekte aus, die genau zur Klasse User gehören, also nicht zur Klasse City und nicht zur Klasse Employee.

Deutsch
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wir verwenden Cookies für den Betrieb der Website, Analyse und Personalisierung. Die Datenverarbeitung erfolgt gemäß der Datenschutzerklärung.
alle akzeptieren anpassen ablehnen