Heim  >  Artikel  >  Backend-Entwicklung  >  So definieren Sie Klassen in PHP

So definieren Sie Klassen in PHP

青灯夜游
青灯夜游Original
2022-02-23 19:52:243730Durchsuche

In PHP können Sie das Klassenschlüsselwort und den Klassennamen verwenden, um eine Klasse zu definieren, und geschweifte Klammern „{}“ verwenden, um die Attribute und Methoden der im Klassenkörper definierten Klasse einzuschließen. Die Syntax „[ändert das Schlüsselwort der Klasse ] Klasse Klassenname {Klassenattribute und -methoden;}“.

So definieren Sie Klassen in PHP

Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 7.1, DELL G3-Computer

Definitionsmethode der PHP-Klasse

In PHP können Sie die Klasse verwenden code> key Definieren Sie eine Klasse, indem Sie einen Klassennamen hinzufügen, und verwenden Sie dann geschweifte Klammern <code>{}, um die im Klassenkörper definierten Attribute und Methoden zu umschließen. Das Syntaxformat der Klasse ist wie folgt : class 关键字加类名的方式定义一个类,然后用大括号{}将在类体中定义类的属性和方法包裹起来,类的语法格式如下:

[修饰类的关键字] class 类名{
    类的属性和方法;
}

类名和变量名还有函数名的命名规则相似,都需要遵循 PHP 中的自定义命名规则,可以是任何非 PHP 保留字的合法标签。一个合法类名以字母或下划线开头,后面跟着若干字母,数字或下划线。如果类名由多个单词组成,习惯上将每个单词的首字母大写。另外,类名最好具有一定的意义,不要随便由几个字母组成。

修饰类的关键字是一个可选参数,可以省略。我们通常使用下面这些关键字来修饰类:

  • abstract:抽象类或方法,被修饰为抽象类之后,类将不能被实例化,但可以被继承。如果类中有至少一个方法被声明为抽象的,那么这个类也必须声明为抽象的。继承一个抽象类的时候,子类必须重新定义父类中的所有抽象方法,而且这些方法的访问控制必须和父类中一样。

  • final

    Class Person{};

    Klassenname und Variablenname Es gibt auch ähnliche Namensregeln für Funktionsnamen, die den benutzerdefinierten Namensregeln in PHP folgen müssen und jedes zulässige Tag sein können, das kein PHP-reserviertes Wort ist. Der Name einer juristischen Klasse beginnt mit einem Buchstaben oder Unterstrich, gefolgt von einer Reihe von Buchstaben, Zahlen oder Unterstrichen. Wenn der Klassenname aus mehreren Wörtern besteht, ist es üblich, den ersten Buchstaben jedes Wortes groß zu schreiben. Zudem sollte der Klassenname eine bestimmte Bedeutung haben und nicht nur aus wenigen Buchstaben bestehen.
Das Schlüsselwort, das die Klasse ändert, ist ein optionaler Parameter und kann weggelassen werden. Normalerweise verwenden wir die folgenden Schlüsselwörter, um Klassen zu ändern:

  • abstract: abstrakte Klasse oder Methode, anschließend als abstrakte Klasse geändert , die Klasse kann nicht instanziiert, aber vererbt werden. Wenn mindestens eine Methode in einer Klasse als abstrakt deklariert ist, muss die Klasse auch als abstrakt deklariert werden. Beim Erben einer abstrakten Klasse muss die Unterklasse alle abstrakten Methoden in der übergeordneten Klasse neu definieren und die Zugriffskontrolle dieser Methoden muss dieselbe sein wie in der übergeordneten Klasse.

  • final: Mit final dekorierte Klassen können nicht vererbt werden und mit final dekorierte Methoden können nicht in Unterklassen neu definiert werden.

    Hinweis: Eine Klasse kann ihre eigenen Konstanten, Variablen (in der Klasse „Mitgliedseigenschaften“ oder „Eigenschaften“ genannt) und Funktionen (in der Klasse „Mitgliedsmethoden“ oder „Methoden“ genannt) enthalten.

    Beispiel:

    Definieren Sie eine leere Klasse

    Class Person{
      成员属性........
      操    作........
    }
    Definieren Sie eine Klasse mit Mitgliedseigenschaften und -operationen

    Final class Person{
      成员属性........
      操    作........
    }

    Definieren Sie eine Klasse, die nicht vererbt werden kann, verwenden Sie das letzte Schlüsselwort

    final class FinalClass {
      public function ffun() {
      echo “本类为final类”;
      }
    }

    Hinweis: Das letzte Schlüsselwort kann nicht verwendet werden Mitgliedsattribute ändern, Sie können nur Klassen und Methoden ändern (die endgültigen Methoden werden später vorgestellt)

    Hier ist eine Klasse mit final

    Definieren Sie eine endgültige Klasse FinalClass, einschließlich einer öffentlichen Funktion

    class ChildFinalClass extends FinalClass {
      public function fchildfun() {
      echo ‘本类继承final类FinalClass ’;
      }
    }
    Definieren Sie eine Klasse ChildFinalClass und erben it FinalClass-Klasse

    Fatal error: Class ChildFinalClass may not inherit from final class (FinalClass)
    🎜Auf diese Weise fordert das System bei Ausführung des obigen Befehls auf🎜rrreee🎜Beweist, dass die durch das letzte Schlüsselwort definierte Klasse nicht von Unterklassen geerbt werden kann🎜🎜Empfohlenes Lernen: „🎜PHP-Video-Tutorial🎜“ 🎜

Das obige ist der detaillierte Inhalt vonSo definieren Sie Klassen 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