Héritage en PHP

PHPz
PHPzoriginal
2024-08-29 12:59:341276parcourir

L'héritage est un moyen d'étendre les fonctionnalités de classe existantes dans la classe nouvellement créée. Nous pouvons également ajouter des fonctionnalités à la classe nouvellement créée en plus d'étendre les fonctionnalités de la classe de base. Lorsque nous héritons d’une classe, nous disons qu’une classe héritée est une classe enfant (sous-classe), appelée classe parent dont nous héritons. La classe parent est également appelée classe de base. C'est ainsi que l'on permet une meilleure gestion du code de programmation et la réutilisabilité du code. L'idée derrière l'utilisation de l'héritage est une meilleure gestion du code et la réutilisabilité du code. Dans cette rubrique, nous allons en apprendre davantage sur l'héritage en PHP.

PUBLICITÉ Cours populaire dans cette catégorie DEVELOPPEUR PHP - Spécialisation | Série de 8 cours | 3 tests simulés

Commencez votre cours de développement de logiciels libres

Développement Web, langages de programmation, tests de logiciels et autres

Types d'héritage en PHP

PHP prend en charge différents types d'héritage, comme JAVA. Le tableau ci-dessous montre la liste des types d'héritage et le statut de prise en charge en PHP.

Inheritance Type Support in PHP
Single Inheritance YES
Multilevel Inheritance YES
Hierarchical Inheritance YES
Multiple Inheritance NO

1. Héritage unique

PHP prend en charge l'héritage unique. L'héritage unique est un concept en PHP dans lequel une seule classe peut être héritée par une seule classe. Nous devons avoir deux classes entre ce processus. L’une est la classe de base (parente) et l’autre est la classe enfant. Comprenons la même chose avec un exemple. Il est communément appelé héritage simple. Ce type d'héritage en langage PHP reste le même que JAVA, C++, etc.

Héritage en PHP

Code :

<?php
class MyAccess {
var $var = "This is first var";
protected $fist_name;
// simple class method
function returnVar() {
echo $this->fist_name;
}
function set_fist_name($set_this){
$this->fist_name = $set_this;
}
}
class child extends MyAccess {
function setVal($set_this){
$this->fist_name = $set_this;
}
function getVal(){
echo $this->fist_name;
}
}
$obj1 = new child();
$obj1->setVal("Jai Shre");
$obj1->getVal();
?>

MyAccess est le parent et l'enfant est le nom de la classe de l'enfant.

Sortie :

Héritage en PHP

2. Héritage multiniveau

PHP prend en charge l'héritage multiniveau. Dans ce type d'héritage, nous aurons plus de 2 classes. Dans ce type d'héritage, une classe parent sera héritée par une classe enfant puis cette classe enfant sera héritée par la classe enfant. Ce type d'héritage en langage PHP reste le même qu'en C++ etc.

Héritage en PHP

Code :

<?php
class ParentClass {
var $var = "This is first var";
public $fist_name;
// simple class method
function returnVar() {
echo $this->fist_name;
}
function set_fist_name($set_this){
$this->fist_name = $set_this;
}
}
class child_1 extends ParentClass {
function setVal($set_this){
$this->fist_name = $set_this;
}
function getVal(){
echo "Extended By Parent Class -". $this->fist_name;
}
}
class child_2 extends child_1 {
function setVal($set_this){
$this->fist_name = $set_this;
}
function getVal(){
echo "Extended By child 1  - ".$this->fist_name;
}
}
$obj1 = new child_1();
$obj1->setVal("This is first inherited class");
$obj1->getVal();
echo "<br/><br/>";
$obj2 = new child_2();
$obj2->setVal("This is second inherited class");
$obj2->getVal();
?>

Sortie :

Héritage en PHP

3. Héritage hiérarchique

PHP prend en charge l'héritage hiérarchique. L'héritage hiérarchique est le type d'héritage dans lequel un programme se compose d'un seul parent et de plusieurs classes enfants. Comprenons la même chose avec cet exemple. Ce type d'héritage en langage PHP reste le même que JAVA, C++, etc.

Héritage en PHP

Code :

<?php
class ParentClass {
var $var = "This is first var";
public $fist_name;
// simple class method
function returnVar() {
echo $this->fist_name;
}
function set_fist_name($set_this){
$this->fist_name = $set_this;
}
}
class child_1 extends ParentClass {
function setVal($set_this){
$this->fist_name = $set_this;
}
function getVal(){
echo $this->fist_name;
}
}
class child_2 extends ParentClass {
function setVal($set_this){
$this->fist_name = $set_this." - ".$set_this;;
}
function getVal(){
echo $this->fist_name;
}
}
$obj1 = new child_1();
$obj1->setVal("This is first child class");
$obj1->getVal();
echo "<br/><br/>";
$obj2 = new child_2();
$obj2->setVal("This is second child class");
$obj2->getVal();
?>

Sortie :

Héritage en PHP

Nous avons une classe parent nommée ParentClass et deux classes enfants, child_1 et child_2, respectivement. Le scénario d'héritage donné est appelé héritage hiérarchique.

Importance de l'héritage en PHP

L'importance de l'héritage est bien plus grande car elle présente d'énormes avantages.

  • La réutilisabilité du code est l'une des méthodes les plus fréquemment utilisées en matière d'héritage ; la classe de base reste telle quelle entre le processus. Comme nous pouvons le voir dans l’exemple ci-dessus de tout l’héritage, le code est réutilisé d’une classe à l’autre. Nous n'avons pas besoin d'être obligés de réécrire la même chose encore et encore.
  • Une classe de base peut être utilisée par un certain nombre de ses classes dérivées dans la hiérarchie des classes. Oui, c'est un type d'héritage dans lequel nous pouvons étendre la classe parent avec plusieurs héritages.
  • L'extensibilité est l'un des avantages de l'héritage dans lequel nous pouvons étendre la fonctionnalité de la classe de base sans apporter peu ou pas de modifications pour répondre aux exigences métier. Supposons que nous options simplement pour une classe parent sans classe enfant. Mais en cas de besoin, nous pouvons ajouter la classe enfant pour répondre à nos besoins professionnels plus tard.
  • La substitution est un autre avantage de cette fonctionnalité d'héritage dans laquelle nous pouvons réécrire la définition de la fonction de classe de base dans la classe dérivée pour apporter des modifications selon les exigences de l'entreprise.
  • Moins de quantité de code – en attendant, nous aurons comparativement moins de code tout en progressant dans l'héritage par rapport à la méthode traditionnelle de codage.
  • L'héritage a également activé les fonctionnalités de masquage des données. Nous pouvons exposer la seule partie requise de la classe parent à la classe enfant en utilisant divers modificateurs d'accès PHP.
  • Prend entièrement en charge MVC – nous pouvons opter pour MVC en utilisant le concept d'héritage.

Conclusion

Nous devrions utiliser l'héritage pour réaliser notre activité car il présente certains avantages par rapport au code normal. Nous devons veiller à la sécurité des données tout en traitant de l'héritage. Nous pouvons utiliser des modificateurs d'accès tels que privé et protégé pour gérer la dissimulation et la sécurité des données. PHP ne prend pas en charge les héritages multiples.

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
Article précédent:Surcharge de méthode en PHPArticle suivant:Surcharge de méthode en PHP