Heim > Artikel > Backend-Entwicklung > Was ist der Unterschied zwischen final und static in PHP?
Der Unterschied zwischen final und static in PHP: 1. Statische Variablen existieren nur in der lokalen Funktionsdomäne, aber wenn die Programmausführung diesen Bereich verlässt, geht ihr Wert nicht verloren. 2. Final wird verwendet Funktionen Es gehört zur objektorientierten Verwendung. Einmal verwendet, kann diese Funktion nicht geändert oder überladen werden.
Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.1, Dell G3-Computer
Der Unterschied zwischen final und static in PHP
static ist eine statische Variable, die nur lokal vorhanden ist Funktionsdomäne, aber wenn die Programmausführung diesen Bereich verlässt, geht ihr Wert nicht verloren.
Sie können damit beispielsweise die kumulative Anzahl von Funktionsaufrufen zählen.
<?PHP function Test() { static $w3sky = 0; echo $w3sky; $w3sky++; } ?>
Statisches Schlüsselwort
Auf dieser Seite wird die Verwendung des statischen Schlüsselworts zum Definieren statischer Methoden und Eigenschaften erläutert. static kann auch zum Definieren statischer Variablen und später statischer Bindung verwendet werden. Sehen Sie sich die Seite oben an, um zu sehen, wie statisch dort verwendet wird.
Wenn Sie ein Klassenattribut oder eine Methode als statisch deklarieren, können Sie direkt darauf zugreifen, ohne die Klasse zu instanziieren. Auf statische Eigenschaften kann nicht über ein Objekt einer instanziierten Klasse zugegriffen werden (auf statische Methoden ist dies jedoch möglich).
Statische Methoden
Da statische Methoden keinen Aufruf eines Objekts erfordern, ist die Pseudovariable $this in statischen Methoden nicht verfügbar.
Der statische Aufruf einer nicht statischen Methode führt zu einem Fehler.
Vor PHP 8.0.0 war der statische Aufruf einer nicht statischen Methode veraltet und führte zu einer Warnung der Stufe E_DEPRECATED.
fainal wird für Funktionen verwendet und gehört zur objektorientierten Verwendung. Einmal verwendet, kann diese Funktion nicht geändert oder überladen werden.
PHP 5 fügt ein neues Endschlüsselwort hinzu. Wenn eine Methode in der übergeordneten Klasse als endgültig deklariert wird, kann die untergeordnete Klasse die Methode nicht überschreiben. Wenn eine Klasse als final deklariert ist, kann sie nicht vererbt werden.
Empfohlenes Lernen: „PHP-Video-Tutorial“
Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen final und static in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!