Heim > Backend-Entwicklung > PHP-Tutorial > Was ist der Unterschied zwischen Überladung und Umschreiben in PHP? Was ist der Unterschied zwischen Überladung und anderen Sprachen (wie Java)?

Was ist der Unterschied zwischen Überladung und Umschreiben in PHP? Was ist der Unterschied zwischen Überladung und anderen Sprachen (wie Java)?

WBOY
Freigeben: 2016-08-04 09:20:43
Original
867 Leute haben es durchsucht

Frage:
Der Inhalt zum Überladen im PHP-Handbuch lautet wie folgt: Das von PHP bereitgestellte „Überladen“ bezieht sich auf das dynamische „Erstellen“ von Klassenattributen und -methoden.
Wir tun dies durch magische Methoden.
Wie zum Beispiel __call($funcname, $arguments), __callStatic($funcname, $arguments)

Überladen bedeutet in der JAVA-Sprache, dass mehrere Methoden in einer Klasse erstellt werden können. Sie haben den gleichen Namen, aber unterschiedliche Parameter und unterschiedliche Definitionen.

Beim Aufrufen von Methoden bestimmt die spezifische Anzahl und Art der an sie übergebenen Parameter, welche Methode verwendet werden soll.

Frage: Es gibt definitiv Unterschiede in den Konzepten der Überladung zwischen PHP und Java, aber ich weiß nicht, was der wirkliche Unterschied ist?

Antwortinhalt:

Frage:
Der Inhalt zum Überladen im PHP-Handbuch lautet wie folgt: Das von PHP bereitgestellte „Überladen“ bezieht sich auf das dynamische „Erstellen“ von Klassenattributen und -methoden.
Wir tun dies durch magische Methoden.
Wie zum Beispiel __call($funcname, $arguments), __callStatic($funcname, $arguments)

Überladen bedeutet in der JAVA-Sprache, dass mehrere Methoden in einer Klasse erstellt werden können. Sie haben den gleichen Namen, aber unterschiedliche Parameter und unterschiedliche Definitionen.

Beim Aufrufen von Methoden bestimmt die spezifische Anzahl und Art der an sie übergebenen Parameter, welche Methode verwendet werden soll.

Frage: Es gibt definitiv einen Unterschied in den Konzepten der Überladung zwischen PHP und Java, aber ich weiß nicht, was der wirkliche Unterschied ist?

Java ist stark typisiert

<code>public class DataArtist {
    ...
    public void draw(String s) {
        ...
    }
    public void draw(int i) {
        ...
    }
    public void draw(double f) {
        ...
    }
    public void draw(int i, double f) {
        ...
    }
}</code>
Nach dem Login kopieren

Das sogenannte Überladen von PHP ist nur eine ähnliche Neufassung einiger magischer Methoden.
Da gibt es einen guten Spruch in den Kommentaren

Diese Technik sollte in diesem Artikel als „Interpreter-Hooks“ bezeichnet werden.

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