Maison > développement back-end > tutoriel php > Explication détaillée de quelques exemples de fonctionnalités de la classe PHP

Explication détaillée de quelques exemples de fonctionnalités de la classe PHP

伊谢尔伦
Libérer: 2023-03-12 06:10:01
original
1159 Les gens l'ont consulté

Cet article présente principalement les caractéristiques des classes PHP et analyse les compétences d'utilisation associées des méthodes statiques et des appels de membres statiques dans les classes PHP sous forme d'exemples. Les amis dans le besoin peuvent s'y référer

Les exemples. de cet article décrivent les caractéristiques de la classe PHP. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

Caractéristiques de la transmission descendante de l'objet

Lorsqu'un objet appelle une méthode d'instance, puis accède à la méthode Appel statiqueUne méthode d'une autre classe, puis l'objet dans la méthode source (this) est obtenu dans la méthode appelée statiquement

<?php
class bee{
  public $a = 1;
  public function f(){
    echo $this->a;
    echo &#39;<br>&#39;;
    @lig::f();
  }
}
class lig{
  public $a = 2;
  public function f(){
    echo $this->a;
  }
}
$obj = new bee();
$obj->f();
Copier après la connexion

Le résultat en cours d'exécution est :

1
1

statique Liaison statique tardive

statique a 3 significations différentes de la syntaxe

Statique dans un variable de fonction

function f(){
  static $v = 1;
}
Copier après la connexion

Les membres statiques de la classe

class bee{
  static $v = 1;
  static function f(){}
}
Copier après la connexion

spécifient dynamiquement la « classe actuelle » dans la méthode. Différent de self, static représente la classe qui appelle cette méthode (dynamique. ), self fait référence à la classe (statique) où se trouve son code

class bee{
  static public $a = 10;
  static public function f(){
    echo get_class().&#39;:&#39;;
    echo self::$a.&#39;-&#39;;
    echo static::$a;
  }
}
class lig extends bee{
  static public $a = 20;
}
echo bee::f();
echo &#39;<br>&#39;;
echo lig::f();
Copier après la connexion

Les résultats d'exécution sont les suivants :

bee:10-10
bee:10-20

Orienté objetTrois idées principales

1.Encapsulation

Est d'encapsuler les données et essayez de ne pas le montrer aux autres, vous pouvez. Je pense que l'encapsulation la plus basique est d'encapsuler beaucoup de données dans une classe, mais plus strictement parlant, c'est de rendre les attributs aussi privés que possible et assurer les opérations vers l’extérieur grâce à des méthodes partagées.

2. Héritage

3. Le polymorphisme

fait généralement référence à un objet La même méthode. obtient des résultats différents
Cela signifie également que différents objets utilisent la même méthode pour obtenir des résultats différents

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal