Heim > Artikel > Backend-Entwicklung > So definieren Sie Klassen und ihre Mitgliedseigenschaften in PHP
Das Konzept der Klasse: Eine Klasse ist eine Sammlung von Objekten mit denselben Eigenschaften und Operationen. Es bietet eine einheitliche abstrakte Beschreibung für alle zu dieser Klasse gehörenden Objekte, die zwei Hauptteile umfasst: Attribute und Operationen. In der Programmiersprache von objektorientiert ist eine Klasse eine unabhängige Programmeinheit. Sie sollte einen Klassennamen haben und zwei Hauptteile enthalten: Attributbeschreibung und Operationsbeschreibung.
1. Klassendefinition:
i. Klassenschlüsselwortdefinition
Definieren Sie eine leere Klasse mit Mitgliedsattributen und Operationen
Class Person{};
3. Definieren Sie eine Klasse, die nicht vererbt werden kann, verwenden Sie das letzte Schlüsselwort
Class Person{ 成员属性........ 操 作........ }
4. Hinweis: Das letzte Schlüsselwort kann nicht zum Ändern von Mitgliedern verwendet werden Attribute, Sie können nur Klassen und Methoden ändern (endgültige Methoden werden später eingeführt)
Final class Person{ 成员属性........ 操 作........ }5. Hier ist eine Klasse mit final Definieren Sie eine finale Klasse FinalClass, einschließlich einer öffentlichen Funktion
Definieren Sie eine Klasse ChildFinalClass und erben Sie die Klasse FinalClass
final class FinalClass { public function ffun() { echo “本类为final类”; } }
Auf diese Weise fordert das System bei Ausführung des obigen Befehls dazu auf
class ChildFinalClass extends FinalClass { public function fchildfun() { echo ‘本类继承final类FinalClass ’; } }
Bewiesen durch das letzte Schlüsselwort Die definierte Klasse kann nicht von Unterklassen geerbt werden
Fatal error: Class ChildFinalClass may not inherit from final class (FinalClass)2 Definition von Mitgliedsattributen in der Klassei Mitgliedsattribute sind einige für die Klasse definierte Variablenattribute, die als a Klasse Man sagt, dass jeder ein Paar Augen (normal, außer Erlangshen), einen Mund, zwei Ohren usw. hat. Einige feste Eigennamen, die zur Beschreibung oder zum Ausdruck bestimmter Dinge verwendet werden, werden Mitgliedsattribute genannt ii Schlüsselwörter, die bei der Deklaration von Mitgliedsattributen in einer Klasse verwendet werden, sind iii. Gängige Mitgliedsattributdeklarationen beginnen mit den folgenden Schlüsselwörtern: public, var, protected, private, gefolgt von „composite of“. Variablen. Es gibt auch einige Mitgliedsattribute, einschließlich statischer, konstanter Konstanten.Öffentlich: Gibt global an und kann von Unterklassen innerhalb und außerhalb der Klasse aufgerufen werden. Var: Dieses Mitgliedsattribut wird berücksichtigt PHP 5-Version Attribute des öffentlichen Typs geschützt bedeutet geschützt und kann nur von dieser Klasse oder Unterklasse oder übergeordneten Klasse aufgerufen werden privat
bedeutet privat und kann nur innerhalb dieser Klasse verwendet werden
Statisch: 1) Statische Attribute,
2) Mit Statik geänderte Mitgliedsattribute können von allen Objekten derselben Klasse gemeinsam genutzt werden 3) Statische Daten Es existiert im Datensegment im Speicher, wenn die Klasse zum ersten Mal geladen wird (Initialisierung des statischen Segments) 4) Verwenden Sie self:: Member-Attributname in der Klasse 5) Klasse extern Klassenname:: MitgliedsattributnameConst: 1) Konstantenattribute in der Klasse. Bei der Deklaration von Konstanten in der Klasse muss const verwendet werden. 2) Verwenden Sie self:: Mitgliedsattributname in die Klasse3) Outreach-Verwendung von Klassenname :: Mitgliedsattributname
Hinweis: Variablen im Attribut können initialisiert werden, aber die Initialisierung muss konstant sein Konstante, keine Konstante, die zur Laufzeit nach der Kompilierungsphase berechnet wird. Beispielsweise darf es keine Operatoren enthalten, keine Variablen sein, keine Funktion sein usw.
iv. So rufen Sie Mitgliedseigenschaften auf:
In der
Mitgliedsmethodeder Klasse können Sie $this->property verwenden (Eigenschaft ist der Eigenschaftsname). . Um auf die Eigenschaften und Methoden einer Klasse zuzugreifen, kann jedoch nicht auf die statischen Eigenschaften einer Klasse oder in einer statischen Methode zugegriffen werden. Verwenden Sie stattdessen self::$property. Die Pseudovariable $this kann in nicht statischen Methoden einer Klasse verwendet werden. Diese Pseudovariable ist eine Referenz auf das instanziierte Objekt, das die Methode aufruft.
Als nächstes erkläre ich den obigen Inhalt mit Code:
3. Definition von Operationen in einer Klasse i. Ich nenne Operationen im Allgemeinen gerne als Methoden Im Folgenden werde ich Operationen als Methoden bezeichnen, aber sie sind alle gleichclass FinalClass { //static $a = strTolower(); //这种写法错误 //const A = 1+2; //这种写法错误 //public $name = 123+456; //这种写法错误 static $a = '$a'; const A = 'A'; public $name = '凤姐'; protected $sex = '男+女'; private $age = 23; } class ChildFinalClass extends FinalClass{ public function fchildfun(){ echo 'ChildFinalClass类中ChildFinalClass::$a->'.ChildFinalClass::$a."<hr>"; Echo 'ChildFinalClass类中ChildFinalClass::A->'.ChildFinalClass::A."<hr>"; echo '大家好,我叫'.$this->name."<hr>"; echo '我是:'.$this->sex.'生<hr>'; echo '我今年:'.$this->age.'<hr>'; //由于age是私有的成员属性,所以在这里将不会被调用,将提示没有定义此属性在ChildFinalClass类中。 } } $obj = new ChildFinalClass(); $obj->fchildfun();
ii Definition von Mitgliedsmethoden: Mitgliedsmethoden sind einige für die Klasse definierte Funktionsmethoden kann essen, kann laufen, kann Code eingeben, das sind Mitgliedsmethoden. Das heißt, Sie können einige ausführbare Aktionen ausführen, die wir als Mitgliedsmethoden verstehen
iii Informationen zum Zugriff auf Mitgliedsmethoden und Mitgliedsattribute finden Sie in der Einführung zum Zugriff auf Mitgliedsattribute oben.
iv. Zu den Mitgliedsmethoden und Mitgliedsattributen gehören auch „public“, „protected“, „private“, „static“ und „final“, und der Gültigkeitsbereich ist derselbe. Hier sind einige Beispiele für Ihre Referenz und Ihr Verständnis.
v. Statische Member-Methoden können nur auf statische Member-Eigenschaften und Member-Methoden zugreifen, und Sie können self::static method() verwenden, um auf statische Methoden innerhalb der Klasse zuzugreifen, und class name::static method() verwenden um auf die externe Klasse zuzugreifen. )
1. Benutzerdefinierte Methoden:
i. Magic-Methoden müssen als öffentlich definiert werden magische Methoden müssen so sein
ii. Ab PHP 5 und höher können Klassen in PHP magische Methoden verwenden. Es legt fest, dass Methoden, die mit zwei Unterstrichen () beginnen, als magische Methoden reserviert sind. Daher wird empfohlen, dass alle Funktionsnamen nicht mit ihnen beginnen, es sei denn, die vorhandenen magischen Methoden werden überlastet. Als nächstes werden einige magische Methoden aufgeführt Ausarbeiten Um zu verstehen, können Sie eine bestimmte Frage abfragen und verstehen, daher werde ich sie hier nicht im Detail vorstellen.
1. construction() Konstruktionsmethode
destruct()
2 , clone()
Wenn Sie ein Objekt kopieren möchten, müssen Sie die Methode clone verwenden
3 Die Methode toString()
wird beim Konvertieren eines Objekts automatisch aufgerufen Wenn Sie zum Beispiel echo zum Drucken von Objekten verwenden, verwenden Sie
4, beim Serialisieren verwenden Sie
wakeup, beim Deserialisieren rufen Sie
5 auf. set_state()
Wenn var_export() aufgerufen wird, wird diese statische Methode aufgerufen (gültig seit PHP 5.1.0)
6. invoke (gültig in PHP 5.3.0 oder höher)
Beim Versuch, ein Objekt als Funktion aufzurufen, wird die Invoke-Methode automatisch aufgerufen.
7. callStatic (gültig für PHP 5.3.0 und höher) dient zur Verarbeitung statischer Methodenaufrufe
8. Diese Methode wird ausgelöst, wenn eine undefinierte Eigenschaft aufgerufen wird übergeben ist der Name der Eigenschaft, auf die zugegriffen wird.
set() Wenn einer undefinierten Eigenschaft ein Wert zugewiesen wird, wird diese Methode ausgelöst. Die übergebenen Parameter sind der Eigenschaftsname und der festzulegende Wert. Die Nichtdeklaration umfasst hier Attribute, deren Zugriffskontrolle geschützt und privat ist (d. h. Attribute, die keine Zugriffsberechtigung haben), wenn sie über ein Objekt aufgerufen werden.
9. isset() Diese Methode wird aufgerufen, wenn die Funktion isset() für ein undefiniertes Attribut aufgerufen wird.
unset() Wenn die Funktion unset() für ein undefiniertes Attribut aufgerufen wird. Diese Methode wird aufgerufen, wenn
10. call($method, $arg_array)
Wenn eine undefinierte Methode aufgerufen wird, wird diese Methode aufgerufen
Die undefinierten Methoden hier umfassen eine Methode ohne Zugriffsberechtigung; wenn die Methode nicht vorhanden ist, suchen Sie nach der Methode. Wenn sie in der übergeordneten Klasse nicht vorhanden ist, rufen Sie die Methode call() dieser Klasse auf Suchen Sie in dieser Klasse nach der Methode call() in der übergeordneten Klasse.
11. autoload() Automatisches LadenMagische Methode
Das obige ist der detaillierte Inhalt vonSo definieren Sie Klassen und ihre Mitgliedseigenschaften in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!