Die drei Hauptmerkmale der objektorientierten Programmierung sind Kapselung, Vererbung und Polymorphismus. Bei der Programmierung müssen Sie möglicherweise mehrmals einen bestimmten Code verwenden, und die Verwendung der Erbschaft reduziert die Wiederholung des Umschreibens von Code manuell, indem Sie den Code wiederverwenden. Die Vererbung ist eine Methode zum Erstellen einer neuen Klasse durch Erben einer Basisklasse. Das Objekt der neuen Klasse wird in der Lage sein, auf alle Klassenmitglieder der neuen Klasse sowie die Basisklasse durch Vererbung zugreifen zu können. Auf diese Weise kann der gleiche Code viele Male wiederverwendet werden, indem er ihn nur einmal schreibt. PHP verwendet das
erweitern Schlüsselwort für die Vererbung. Dieses Tutorial zeigt, wie die Vererbung mithilfe des PHP -Skripts implementiert werden kann.
Syntax der Vererbung
Die Syntax der Vererbung ist unten gezeigt.
Klasse NewClass erweitert die alte Klasse
…
Hier, NEWCLASS heißt das Kind, abgeleitet, oder SubKlasse; Und OldClass heißt das Elternteil, Base, oder superKlasse. Der nächste Teil dieses Tutorials zeigt einige Beispiele für die Verwendung von Erbschaften in PHP.
Beispiel 1: Einfache Verwendung des Vererbens
Das folgende Skript zeigt eine einfache Verwendung der Vererbung im PHP -Skript an. Im Skript, Mitarbeiter ist die übergeordnete Klasse, die zwei Klassenvariablen enthält, und die setdata () Die Methode wird verwendet, um die Klassenvariablen zu initialisieren. Der Executive Klasse ist die Kinderklasse, die von der geerbt wird Mitarbeiter Klasse mit dem erweitern Stichwort. Es enthält eine Klassenvariable und eine Methode mit dem Namen zeige Details() Den Klassenvariablen der Eltern- und Kinderklassen drucken. Nach dem Erstellen des Objekts der untergeordneten Klasse werden die Methoden der Eltern- und Kinderklassen unter Verwendung des Objekts für Kinderklassen aufgerufen.
// Elternklasse
Klassenangestellter
// übergeordnete Klassenvariablen
öffentlich $ name;
öffentliche Abteilung $;
// grundlegende Daten initialisieren
öffentliche Funktion SetData ()
$ this-> name = "John Abraham";
$ this-> department = "hr";
// Kinderklasse
Der Class Executive erweitert Mitarbeiter
// Unterrichtsklassenvariable
public $ codentation = "Marketing Executive";
// Mitarbeiterdetails drucken
öffentliche Funktion Showdetails ()
if ($ this-> Name != "" && $ this-> Bezeichnung != "" && $ this-> Abteilung != "")
Echo "
Mitarbeiterdetails: ";
Echo "Name:".$ this-> Name."
";
Echo "Bezeichnung:".$ this-> Bezeichnung."
";
Echo "Abteilung:".$ this-> Abteilung."
";
// Objekt die untergeordnete Klasse erstellen
$ objemp = new Executive ();
// Die Methode der Elternklassen rufen
$ objemp-> setData ();
// METZSKLASSE -Methode anrufen
$ objemp-> showdetails ();
?>
Ausgang
Die folgende Ausgabe wird nach dem Ausführen des Skripts angezeigt. Hier werden die Werte des Mitarbeiternamens und der Abteilungswerte aus der Elternklasse gedruckt und der Wert der Mitarbeiterbezeichnung wird von der Kinderklasse gedruckt.
Beispiel 2: Vererbung mit überschreibender Methode
Überschreibung auf die Methode tritt auf, wenn eine Methode mit demselben Namen sowohl im Elternteil als auch in der untergeordneten Klasse deklariert wird. Das folgende Skript zeigt Vererbung mit der Überschreitung der Methode mit dem PHP -Skript. Hier das zeige Details() Die Methode wird sowohl in der Elternklasse als auch in der Kinderklasse deklariert. Das Objekt der übergeordneten Klasse zugreift auf die zeige Details() Methode der übergeordneten Klasse, und das Objekt der untergeordneten Klasse zugreift auf die zeige Details() Methode der Kinderklasse.
// Elternklasse
Klassenangestellter
// übergeordnete Klassenvariablen
öffentlich $ name;
öffentliche Abteilung $;
// Daten initialisieren
Funktion __construct ()
$ this-> name = "Janifer Lopez";
$ this-> Abteilung = "Verkauf";
// Mitarbeiterdetails drucken
öffentliche Funktion Showdetails ()
Echo "
Mitarbeiterdetails: [aus der Elternklasse] ";
Echo "Name:".$ this-> Name."
";
Echo "Abteilung:".$ this-> Abteilung."
";
// Kinderklasse
Der Class Executive erweitert Mitarbeiter
// Unterrichtsklassenvariable
public $ designation = "Sales Executive";
// Mitarbeiterdetails drucken
öffentliche Funktion Showdetails ()
Echo "
Angestellte Details: [aus Kinderklasse] ";
Echo "Name:".$ this-> Name."
";
Echo "Bezeichnung:".$ this-> Bezeichnung."
";
Echo "Abteilung:".$ this-> Abteilung."
";
// übergeordnete Klassenobjekt erstellen
$ objEmployee = neuer Mitarbeiter ();
// Die Methode der Elternklassen rufen
$ OBJOPPLICEE-> SHOWDETAILS ();
// Child Class -Objekt erstellen
$ objexecutive = new Executive ();
// METZSKLASSE -Methode anrufen
$ objexecutive-> showdetails ();
?>
Ausgang
Die folgende Ausgabe wird nach dem Ausführen des Skripts angezeigt. Wenn das zeige Details() Die Methode wird mit dem Objekt der übergeordneten Klasse aufgerufen. Die Ausgabe der übergeordneten Klasse zeigt die Ausgabe an. Wenn das zeige Details() Die Methode wird mit dem Objekt der untergeordneten Klasse aufgerufen. Sie zeigt die Ausgabe der Kinderklasse an.
Beispiel 3: Rufen Sie den Elternkonstruktor im Kinderkonstruktor auf
Wenn sowohl die Eltern als auch die untergeordnete Klasse eine Konstruktor -Methode enthalten, kann die untergeordnete Klasse den Konstruktor der übergeordneten Klasse aufrufen. Das folgende Skript zeigt, wie Sie den Konstruktor der übergeordneten Klasse vom Konstruktor der untergeordneten Klasse aufrufen. Der Elternteil :: __ construct () Die Anweisung wird verwendet, um den übergeordneten Konstruktor aufzurufen.
// Elternklasse
Klassenangestellter
// übergeordnete Klassenvariablen
öffentlich $ name;
öffentliche Abteilung $;
// Daten initialisieren
Funktion __construct ($ Name, $ Dept)
$ this-> name = $ name;
$ this-> Abteilung = $ Dept;
// Kinderklasse
Der Class Executive erweitert Mitarbeiter
// Variablen für Kinderklassen
öffentliche $ Bezeichnung;
öffentliches Gehalt $;
// Daten initialisieren
Funktion __construct ($ Name, $ Abteilung, $ Bezeichnung, $ Gehalt)
// Rufen Sie den Konstruktor der Elternklassen auf
Elternteil :: __construct ($ Name, $ Abteilung);
$ this-> Bezeichnung = $ Bezeichnung;
$ this-> Gehalt = $ Gehalt;
// Mitarbeiterdetails drucken
öffentliche Funktion Showdetails ()
Echo "
Mitarbeiterdetails:";
Echo "Name:".$ this-> Name."
";
Echo "Bezeichnung:".$ this-> Bezeichnung."
";
Echo "Abteilung:".$ this-> Abteilung."
";
Echo "Gehalt: $".$ this-> Gehalt."
";
// Child Class -Objekt erstellen
$ objexecutive = new Executive ('Jafar Iqbal', 'Marketing', 'Marketing Executive', 4500);
// METZSKLASSE -Methode anrufen
$ objexecutive-> showdetails ();
?>
Ausgang
Die folgende Ausgabe wird nach dem Ausführen des Skripts angezeigt. Hier werden der Namen und die Abteilung des Arbeitnehmers vom Elternkonstruktor initialisiert, und die Bezeichnung und das Gehalt der Mitarbeiter werden vom Kinderkonstruktor initialisiert.
Beispiel 4: Implementieren Sie die hierarchische Vererbung
Das folgende Skript zeigt, wie die hierarchische Vererbung in PHP implementiert wird. Hier, Klasse 2 wird durch Erben erstellt Klasse 1, Und Klasse3 wird durch Erben erstellt Klasse 2. In diesem Beispiel sind drei Methoden in drei Klassen definiert. Der Klasse3 Objekt wird erstellt, um die Methoden aller Klassen aufzurufen.
// Elternklasse
Klasse class1
Funktion showMethod1 ()
Echo "Es ist die Elternklasse
";
// Kinderklasse
Klasse Class2 erweitert Class1
Funktion showMethod2 ()
Echo "Es ist die Kinderklasse
";
// Grand Child Class
Klasse Class3 erweitert Class2
Funktion showMethod3 ()
Echo "Es ist die Grand Child -Klasse";
$ object = new class3 ();
$ object-> showMethod1 ();
$ object-> showMethod2 ();
$ object-> showMethod3 ();
?>
Ausgang
Die folgende Ausgabe wird nach dem Ausführen des Skripts angezeigt. Hier erschien die erste Textzeile aus Klasse 1, Die zweite Textzeile erschien aus Klasse 2, und die dritte Textzeile ist aus erschienen Klasse3.
Videoanleitung
Abschluss
Dieses Tutorial hat Ihnen verschiedene Arten von Vererben mithilfe von PHP -Skript gezeigt. Nach dem Lesen dieses Artikels sollten Sie das Konzept der Vererbung und deren grundlegenden Verwendungen im PHP -Skript verstehen.