Zu PHP5 wurden viele objektorientierte Ideen hinzugefügt. Die objektorientierten Ideen von PHP5 ähneln den objektorientierten Ideen von Java. Hier beschreiben wir die Funktionen der Schlüsselwörter static und const in PHP5 und hoffen, dass sie Freunden, die PHP5 lernen, hilfreich sein können.
(1) statisch
Das Schlüsselwort static in einer Klasse beschreibt, dass ein Mitglied statisch ist und den externen Zugriff einschränken kann, da die Mitglieder nach static zur Klasse gehören und keiner Objektinstanz angehören. Sie sind für andere Klassen nicht zugänglich und nur für die Klasse zugänglich Durch die Instanzfreigabe kann sichergestellt werden, dass das Programm die Mitglieder vollständig schützt. Statische Variablen einer Klasse sind globalen Variablen sehr ähnlich und können von allen Instanzen der Klasse gemeinsam genutzt werden. Das Gleiche gilt für statische Methoden einer Klasse, ähnlich wie bei globalen Funktionen. Statische Methoden einer Klasse können auf statische Eigenschaften der Klasse zugreifen. Darüber hinaus muss auf statische Mitglieder mit self zugegriffen werden. Die Verwendung dieser Option führt zu einem Fehler.
(Informationen zu den Ähnlichkeiten und Unterschieden zwischen diesem und sich selbst finden Sie unter: http://blog.csdn.net/heiyeshuwu/archive/2004/11/03/165828.aspx )
(2) Konst
const ist ein Schlüsselwort, das eine Konstante definiert, ähnlich wie #define in C. Es kann eine Konstante definieren, wenn ihr Wert im Programm geändert wird.
Geben Sie ein Beispiel für den obigen Code: (Hinweis: Der folgende Code stammt von phpe.net)
<?php
class Counter
{
private static $count = 0;//Definieren Sie eine statische Eigenschaft
const VERSION = 2.0;//Konstante definieren
//Konstruktor
function__construct()
{
self::$count++;
}
//Destruktor
Funktion __destruct()
{
self::$count--;
}
//Definieren Sie eine statische Methode
statische Funktion getCount()
{
return self::$count;
}
}
//Eine Instanz erstellen
$c = new Counter();
//Drucken durchführen
print( Counter::getCount(). "<br>n" ); //Verwenden Sie die direkte Eingabe des Klassennamens, um auf die statische Methode zuzugreifen Counter::getCount
//Drucken Sie die Version der Klasse
print( "Verwendete Version: " .Counter::VERSION. "<br>n"
?>
Nun, im Grunde habe ich an dieser Stelle deutlich gemacht, was ich in meinem Herzen weiß, aber ich habe das Gefühl, dass ich es immer noch bin Ich verstehe, dass mir die statische Aufladung etwas unangenehm ist. Bitte geben Sie mir eine Anleitung!
Meine E-Mail: [email protected]
WriteTime 2004-11-3 21:00
http://dev.csdn.net/author/heiyeshuwu/23f0d08c11bc4509b41844855d5c7063.html