Detaillierte Einführung in das objektorientierte Überladen und Umschreiben in PHP

黄舟
Freigeben: 2023-03-06 12:18:02
Original
1426 Leute haben es durchsucht

In diesem Artikel werden hauptsächlich das Überladen und Umschreiben objektorientierter PHP-Objekte vorgestellt. Es hat einen sehr guten Referenzwert.

Überschreiben ist eine Manifestation von Polymorphismus in einer Klasse. Eine überladene Methode kann den Typ des Rückgabewerts ändern. Mit anderen Worten: Die Rückgabewerttypen von Überladungen können gleich oder unterschiedlich sein.

Überladung

a. Methodenüberladung ist ein Mittel für eine Klasse, um verschiedene Arten von Daten auf einheitliche Weise zu verarbeiten. Es existieren gleichzeitig mehrere Funktionen mit demselben Namen und unterschiedlicher Anzahl/Art von Parametern. Überladung ist eine Manifestation des Polymorphismus in einer Klasse.

b. Java-Methodenüberladung bedeutet, dass Sie mehrere Methoden in einer Klasse erstellen können. Sie haben den gleichen Namen, aber unterschiedliche Parameter und unterschiedliche Definitionen. Beim Aufrufen von Methoden entscheiden Sie anhand der Anzahl und Art der an sie übergebenen Parameter, welche Methode verwendet werden soll. Dies ist Polymorphismus.

c. Beim Überladen sollte der Methodenname derselbe sein, aber der Parametertyp und die Parameternummer sind unterschiedlich und der Rückgabewerttyp kann gleich oder unterschiedlich sein. Der Rückgabetyp kann nicht als Kriterium zur Unterscheidung überladener Funktionen verwendet werden.

2. Überschreiben Sie

a. Definieren Sie die Funktionen der übergeordneten Klasse neu. Wenn eine in einer Unterklasse definierte Methode denselben Namen und dieselben Parameter wie ihre übergeordnete Klasse hat, spricht man von einer überschreibenden Methode. In Java können Unterklassen Methoden von ihrer übergeordneten Klasse erben, ohne dieselben Methoden neu schreiben zu müssen. Aber manchmal möchte die Unterklasse die Methoden der übergeordneten Klasse nicht unverändert erben, sondern bestimmte Änderungen vornehmen, was ein Umschreiben der Methode erfordert. Das Überschreiben von Methoden wird auch als Methodenüberschreiben bezeichnet.

b. Wenn eine Methode in der Unterklasse denselben Methodennamen, denselben Rückgabetyp und dieselbe Parameterliste wie eine Methode in der übergeordneten Klasse hat, überschreibt die neue Methode die ursprüngliche Methode. **Wenn Sie die ursprüngliche Methode in der übergeordneten Klasse benötigen, können Sie das Schlüsselwort super verwenden, das auf die übergeordnete Klasse der aktuellen Klasse verweist**.

c. Die Zugriffsänderungsrechte von Unterklassenfunktionen dürfen nicht geringer sein als die der übergeordneten Klasse.

Wenn der Name, der Rückgabetyp, der Parametertyp und die Nummer der übergeordneten Klassenmitgliedsmethode identisch sind das Gleiche, nur sein interner Code ist anders. In Java wird diese Umschreibungsmethode als Member-Methoden-Refactoring bezeichnet.

In der Unterklasse können Sie die Berechtigungen in der übergeordneten Klassenmethode neu anpassen (von geizig zu großzügig). , Erweitern oder Anpassen der Berechtigungen der übergeordneten Klasse usw., wodurch die Unterkategorie häufig in Blau angezeigt wird, jedoch besser als in Blau. Während des Entwicklungsprozesses sollten Programmentwickler diese Funktionen von Unterklassen sinnvoll nutzen. Aus einer anderen Perspektive ist es jedoch auch erforderlich, den Berechtigungen von Unterklassen bestimmte Einschränkungen aufzuerlegen. Bei Bedarf sollten Berechtigungen für bestimmte Methoden in der übergeordneten Klasse kontrolliert werden, um zu verhindern, dass sie von Unterklassen missbraucht werden.

Das Obige ist eine detaillierte Einführung in das Überladen und Umschreiben in objektorientierten PHP-Objekten. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (m.sbmmt.com).


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage