Heim  >  Artikel  >  Backend-Entwicklung  >  Was ist der Unterschied zwischen statischen Methoden und nicht statischen Methoden in PHP?

Was ist der Unterschied zwischen statischen Methoden und nicht statischen Methoden in PHP?

青灯夜游
青灯夜游Original
2020-11-05 15:56:054820Durchsuche

Unterschied: 1. Nicht statische Methoden können auf jedes Mitglied in der Klasse zugreifen, während statische Methoden nur auf statische Mitglieder in der Klasse zugreifen können. 2. Statische Methoden werden bereits geladen und zugewiesen, wenn die Klasse definiert ist, während nicht statische Methoden werden geladen und zugewiesen, wenn die Klasse definiert ist. Es wird kein Speicher belegt, Speicher wird nur zugewiesen, wenn er als Objekt instanziiert wird.

Was ist der Unterschied zwischen statischen Methoden und nicht statischen Methoden in PHP?

Empfohlen: „PHP-Video-Tutorial

Der Unterschied zwischen statischen Methoden und nicht statischen Methoden in PHP

1 Statische Methoden gehören zur Klasse und können vor der Klasse verwendet werden wird instanziiert. Das heißt, Sie können die Methoden des Objekts verwenden, ohne ein Objekt neu zu erstellen. Beispielsweise kann ein Format wie object::fun1();

2 auf alle Mitglieder der Klasse zugreifen. Statische Methoden können nicht aufgerufen werden -statische Methoden können aufgerufen werden (da das System nicht-statische Methoden automatisch in statische Methoden umwandelt)

3 Statische Methoden werden bereits geladen und zugewiesen, wenn die Klasse definiert wird und wird nur als Objekte instanziiert.

4 Nur statische Variablen und andere statische Methoden können innerhalb von statischen Methoden angezeigt werden (das heißt, statische Methoden können keine nicht statischen Eigenschaften aufrufen. Self:: kann nicht zum Aufrufen nicht statischer Eigenschaften verwendet werden )! Und Schlüsselwörter wie dieses können nicht in statischen Methoden verwendet werden, da sie zur gesamten Klasse gehören. Um andere statische Methoden innerhalb einer statischen Methode aufzurufen, können Sie die Form self:: method name; verwenden.

5 Statische Methoden sind effizienter als die Instanziierung. Der Nachteil statischer Methoden besteht darin, dass sie nicht automatisch zerstört werden Zerstören;

6. Statische Methoden und statische Variablen verwenden nach der Erstellung immer denselben Speicher, während die Verwendung von Instanzen mehrere Speicher erstellt.

Hauptunterschied:

Statische Methoden können vor dem Erstellen des Objekts verwendet werden, während nicht statische Methoden über das von new erstellte Objekt aufgerufen werden müssen.

Es gibt keinen offensichtlichen Unterschied in der Leistung und Speichernutzung zwischen statischen Methoden und Instanzmethoden. Ob eine statische Methode deklariert werden soll, muss unter den drei Aspekten nicht statischer Felder des Typs Ereignisse, objektorientierte Erweiterungen und Polymorphismus berücksichtigt werden .

Zusammenfassung: Statisch bedeutet, dass es, egal wie oft es instanziiert wird, nur ein Ergebnis gibt, während das Ergebnis dynamisch jedes Mal anders ist.

Weitere Kenntnisse zum Thema Programmierung finden Sie unter: Programmierlehre! !

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen statischen Methoden und nicht statischen Methoden in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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