Heim >Backend-Entwicklung >PHP-Tutorial >Vertiefte Kenntnisse der PHP-Klassen- und Konstruktoranalyse

Vertiefte Kenntnisse der PHP-Klassen- und Konstruktoranalyse

迷茫
迷茫Original
2017-03-26 11:22:102197Durchsuche

Jeder hat ein gewisses Verständnis von Klassen. Hier stellen wir nur die bemerkenswerten Aspekte von Klassen in php vor

----Erstellung von Klassen----

php verwendet das Schlüsselwort class, um eine Klasse zu erstellen, und verwendet ein Paar geschweifte Klammern
wie:


class name{
  public $n="";
  private $u="";

  public function name() {
    $n="233";
    $u="23333";
  }

  public function rename($newn){
     $this->n=$newn;//this表示这个类
  }
}

ohne Semikolon Am Ende. Dann ist $n, $u ein Feld; name() ist ein Konstruktor (construct() kann auch einen Konstruktor definieren, siehe unten für Details), der Werte zuweisen kann zu Feldern; rename() ist eine Methode.

----Feld----

Vergleichen
$obj=new name();
echo $obj->n;
und
$obj=new name();
echo $obj-> ;u;

Ersteres ist ausführbar, Letzteres jedoch nicht, da $u zuvor als privat deklariert wurde. Dies ähnelt C++.

Code:

public static $nm ="2333333333333333" ;

deklariert ein statisches Feld für die Funktion.
Auf die Variable kann direkt über den Klassennamen und ::

Echoname::$nm; zugegriffen werden;

Dies ähnelt auch C++.

Sie können auch über self::+$+Variablenname auf statische Felder in einer Klasse zugreifen. In diesem Fall entspricht self $this -> ;.

Die Verwendung von Methoden ähnelt Feldern


----Konstruktor----

In PHP5 und früheren Versionen hat der Konstruktor denselben Namen wie die Klasse

In PHP5 und späteren Versionen kann das Zauberwort construction() den Konstruktor definieren

Das Zauberwort construction() kann den Konstruktor definieren

class name{
  public $n="";
  private $u="";

  public function construct() {
    $n="233";
    $u="23333";
  }

  public function rename($newn){
     $this->n=$newn;
  }
}

Der Konstruktor kann Parameter haben

construct($name="",$sex=" man",$age= 0){}

Bei der Deklaration eines Objekts

$obj= new name("我","man",28);

Wenn kein Parameter angegeben wird, wird standardmäßig der Wert nach = verwendet.

Das obige ist der detaillierte Inhalt vonVertiefte Kenntnisse der PHP-Klassen- und Konstruktoranalyse. 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