Maison >développement back-end >tutoriel php >Trois aspects de la vie en PHP orienté objet
Dans la pensée orientée objet, il existe trois caractéristiques majeures : 封装
, 继承
et 多态
.
1. Encapsulation
a. Définition : 封装
, signifie littéralement mettre le contenu dans un conteneur et le sceller pour le sauvegarder. Dans la pensée de 面向对象
, l’encapsulation fait référence au regroupement de données et d’opérations de données pour les cacher du monde extérieur tout en fournissant une interface exploitable avec le monde extérieur. Semblable à l'adaptateur secteur d'un téléphone mobile, il vous suffit de brancher les deux extrémités de la fiche dans la prise et le cordon d'alimentation, quelle que soit la manière dont l'adaptateur secteur convertit la tension 220 V en une tension que le téléphone mobile peut prendre en charge.
b.Exemple
//封装特性 class Salary{ //将数据和方法都放置进类内部,不可见 private static $count = 0; private $money = 0; public function getMoney(){ //对类内的数据进行操作 return $this->money; } } //类外部 $s = new Salary(); $s->getMoney(); //外部只能访问类中公有的方法,具体实现不可见
2.Héritage
a. Définition : 继承
, signifie littéralement que le fils hérite de l'héritage du père. basé sur les fondations du pays posées par son père. En programmation orientée objet, on appelle l'empire construit par le père 父类
, et l'empire hérité par le fils de son père s'appelle 子类
.
b. Exemple
<?php class Fu{} class Zi extends Fu{} //利用关键字extends表示Zi类是Fu类的子类。 ?>
3. Polymorphisme
a. Définition : 多态
signifie que lorsque 类的继承
apparaît, 方法的重写(override)
apparaît en même temps, c'est-à-dire que 子类
a une méthode du même nom que 父类
. Ensuite, lors de l'instanciation de l'objet, laissez l'objet de classe parent pointer vers l'objet de sous-classe (type obligatoire, PHP ne prend pas en charge 弱类型语言
), et l'objet de classe parent exprime les caractéristiques de l'objet de sous-classe.
b. Exemple (le polymorphisme nécessite un langage fortement typé, vous pouvez donc prendre Java
comme exemple)
//父类 class Animal{ public void show(){ System.out.println("Animal");//这是打印Animal然后换行 } } //子类 class Dog extends Father{ //重写show方法 public void show(){ System.out.println("Dog");//这是打印Dog然后换行 } } //实例化:Java是强类型,必须指定保存数据的变量的类型 Animal a = new Dog(); //父类对象指向子类对象空间 a.show(); //打印Dog,父类对象调用的是子类方法
Recommandé : tutoriel 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!