Maison  >  Article  >  développement back-end  >  Opérations de classe en PHP

Opérations de classe en PHP

不言
不言original
2018-04-20 10:28:542922parcourir

Le contenu de cet article concerne le fonctionnement des classes en PHP, qui a une certaine valeur de référence. Maintenant, je le partage avec tout le monde. Les amis dans le besoin peuvent s'y référer

Déclaration de classe
.
<?php
    权限修饰符 class 类名{
    类的内容;
}
?>


Le modificateur d'autorisation peut être omis, et le modificateur par défaut est public, ce qui signifie propriétés et méthodes Chaque élément de est accessible à la fois à l'intérieur et à l'extérieur de la classe  ; les propriétés et méthodes déclarées avec le mot-clé private

dans

ne sont accessibles que depuis accès à l'intérieur de la classe ;

Les attributs et méthodes déclarés avec le mot-clé protected ne sont accessibles que depuis l'intérieur de la classe. . Cependant, les "sous-classes" générées par "héritage" peuvent également accéder à ces propriétés et méthodes.

2. Le contenu des méthodes de classe
class Student
{
  public $name;/*类的成员属性,修饰关键词publlic、protected、private,如果没有特定的意义,仍然需要用var关键词修饰*/
  function GetIp(){
  //方法的内容;
}
$lili=new 类名称();//类的实例化

peut également être modifié avec les mots-clés public, protected et private.

Le mot-clé $this existe dans chaque méthode membre de la classe. Il s'agit d'une méthode de référence d'objet spéciale. À quel objet appartient la méthode membre, la référence $this représente quel objet.

L'opérateur '::' peut accéder aux membres d'une classe sans aucune instance déclarée.

3. Accéder aux attributs et méthodes des membres dans une classe


Lors de l'accès aux variables ou méthodes membres dans une classe PHP, si Si la variable ou la méthode référencée est déclarée comme const (définition de constante) ou static (déclaration de static), alors l'opérateur doit être utilisé ::,
Au contraire, si la variable ou la méthode référencée n'est pas déclarée comme const ou statique, vous devez alors utiliser l'opérateur ->.
De plus, si vous accédez à une variable ou une méthode const ou statique depuis la classe, vous devez utiliser l'auto-référence.
Au contraire, si vous accédez à une variable ou une méthode non const ou statique depuis la classe. classe, vous devez utiliser l'auto-référentiel $this.
Conclusion : Les fonctions de self et de $this sont très similaires, mais elles sont différentes. $this ne peut pas faire référence à des membres statiques et à des constantes. self ressemble plus à la classe elle-même, et $this ressemble plus à l'instance elle-même.

4. Méthodes constructeur et destructeur

La méthode de construction __construct() est automatiquement appelée lors de l'instanciation d'un objet
Objectif : Peut être utilisé dans les programmes d'initialisation (peut attribuer des valeurs aux attributs des membres ou appeler des méthodes membres)
Syntaxe : [Modifier] function __construct(parameter list...){ }
Format de la méthode du constructeur :
Fonction [Modifier] __construct([paramètre]){
Corps du programme
}

La méthode destructrice __destruct() est automatiquement appelée lorsque l'objet est détruit, c'est-à-dire qu'elle est automatiquement appelée une fois toutes les étapes d'appel exécutées. , c'est-à-dire appelant automatiquement


用途:可以进行资源释放操作或文件的关闭操作
注意:如果类中没有构造方法\析构方法,PHP引擎会自动添加一个构造方法\析构方法,其参数列表为空,方法内容为空


5, héritage de classe et mot-clé final
class 子类名称 extends 父类名称{
     //子类成员变量列表
  function 成员方法(){//子类成员方法
     //方法内容
  }
}


La classe parent possède les propriétés et méthodes publiques de sa sous-classe. En plus des propriétés et méthodes publiques de la classe parent, la sous-classe possède également ses propres propriétés et méthodes.

Si une méthode de la classe parent est déclarée finale, la sous-classe ne peut pas remplacer la méthode et le mot-clé final peut mettre fin à l'héritage de la classe.

Les classes finales ne peuvent pas avoir de sous-classes et les méthodes finales ne peuvent pas être remplacées.

Recommandations associées :

La différence entre les classes abstraites et les interfaces en php



Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn