→statisch: statisch
Verwendung: ist ein Modifikator, der zum Ändern von Mitgliedern (Mitgliedsvariablen, Mitgliedsfunktionen )
class Person { String country = "cn"; }
Lebenszyklus vorliegt Am längsten
2. Priorisiert die Objektexistenz3. Wird von allen Objekten geteiltKann direkt über den Klassennamen aufgerufen werden 🎜>→Der Unterschied zwischen der Instanzvariablen „int age“ (Mitgliedsvariable) und der Klassenvariable „statisch int age“ (statische Mitgliedsvariable)
1 Speicherzweck
Instanzvariable ist vorhanden Heap-Speicher, während das Objekt erstellt wird
Klassenvariablen sind im Methodenbereich vorhanden, während die Klasse geladen wird
2. Lebenszyklus
Instanzvariablen folgen dem Objekt. Verschwinden, wenn die Klasse verschwindet
Klassenvariablen haben den längsten Lebenszyklus und verschwinden, wenn die Klasse verschwindet
→Statische Verwendung
HinweiseStatische Methoden können nur auf statische Methoden zugreifen Mitglieder
2. Dies kann nicht in statischen Methoden definiert werden
, weil static der Existenz von Objekten vorausgeht, sodass dieses
< nicht in statischen Methoden erscheinen kann 🎜>3 . Die Hauptfunktion ist statisch →Vor- und Nachteile von statisch Vorteile: Speichern Sie die Daten des Objekts in einem separaten Bereich, wodurch Platz gespart wird, und es ist nicht erforderlich, sie in jedem zu speichern Objekt Eine Kopie von kann direkt über den Klassennamen (Person.country) aufgerufen werden. Nachteile: Der Lebenszyklus ist zu lang. Der Zugang ist begrenzt. (Es kann nur auf statisch zugegriffen werden) → Wann sollte statisch verwendet werden? Wir müssen von zwei Aspekten ausgehen Da der Inhalt der statischen Änderung Mitgliedsvariablen undMitgliedsmethoden
(Funktion) umfasstWann ist Statik zu definieren? Variablen (Klassenvariablen)?
Wenn gemeinsam genutzte Daten in einem Objekt angezeigt werden, werden die Daten statisch geändert. Die eindeutigen Daten im Objekt müssen als nicht statisch definiert sein und im Heap-Speicher vorhanden sein. Wann definieren Sie statische Funktionen? Wenn innerhalb der Funktion nicht auf nicht statische Daten (objektspezifische Daten) zugegriffen wird, kann die Funktion als statisch definiert werden. →Statische AnwendungJede Anwendung hat gemeinsame Funktionen Diese Funktionen können unabhängig voneinander extrahiert und gepackt werden zur Wiederverwendung. Definieren Sie alle Mitgliedsmethoden als statisch und rufen Sie sie direkt mit dem Klassennamen auf. Es wird einen Standard-Konstruktor
in einer Klasse geben. Die Berechtigungen dieses Konstruktors stimmen mit der Klasse überein, zu der er gehört Format: statisch{ Ausführungsanweisungen in statischen Codeblöcken;}//Funktionen: Wie die Die Klasse wird geladen und die Ausführung wird nur einmal ausgeführt. Wird zum Initialisieren der Klasse verwendet. Das folgende Beispiel:Ladesequenz des statischen Codeblocks-->Konstruktionscodeblock-->Konstruktorfunktion
class StaticCode { static { System,out.println("a"); } }
-Attribute
im Heap-Speicher und führen Sie die Standardinitialisierung durch5. Initialisieren Sie die Attribute explizit
6. Initialisieren das Objekt mit dem Konstruktionscodeblock 7. Initialisieren Sie das Objekt mit dem entsprechenden Konstruktor 8. Zahlen Sie die Speicheradresse an die p-Variable im StapelspeicherDas obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Eigenschaften und Verwendung des Schlüsselworts static in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!