Comment utiliser l'héritage en php avec la programmation orientée objet

La programmation orientée objet en PHP a une autre caractéristique qui le rend très utile pour les grands projets. De nombreux objets sont liés les uns aux autres, et vous pouvez utiliser une relation d'arbre généalogique pour vous simplifier la programmation.

Sommaire

image0.jpg

Comment construire une créature basée sur une autre créature

Il ya une nouvelle créature en ville. Celui-ci a les mêmes caractéristiques de base, mais une attitude pire. Jetez un oeil sur le code pour voir ce qui se passe:

inherit.php? lt; phprequire_once ("Critter.php") - BitterCritter de classe étend Critter {// toutes les propriétés et méthodes héritées de Critter // Vous pouvez ajouter de nouvelles propriétés et la fonction methodspublic glower () {return "$ this-> nom glowers à vous sans rien dire. "-} // fin glower // si vous sur-écrivez une méthode existante, le comportement fonction changespublic talk () {return" Aucun de vos affaires! "-} // fin talk} // Classe end def $ a = new BitterCritter () - print $ a-> glower (). "
"-print $ a-> parler ()."
»->

Cet exemple est une illustration d'une situation de programmation très commun, où vous voulez une spécialisation d'une classe définie précédemment. Il est déjà une classe de Critter, mais vous voulez un nouveau type de créature. La nouvelle créature (la BitterCritter) Commence avec les mêmes caractéristiques générales de la créature ordinaire, mais apporte une nouvelle tournure. L'idée orientée objet héritage est un moyen idéal pour gérer cette situation.

javascript prend une forme différente de la programmation orientée objet basé sur une idée appelée prototypage plutôt que l'héritage. Les gens ont de longues conversations et ennuyeux dont la technique est mieux, mais finalement il n'a pas beaucoup d'importance. La plupart des langages de POO soutiennent la forme d'héritage utilisé dans PHP, vous devriez vraiment savoir comment il fonctionne.

Comment hériter du vent (et rien d'autre)




Voici comment mettre en œuvre l'héritage:

  1. Commencez avec une classe existante.

    Pour cet exemple, vous commencez avec l'ordinaire Critter classe, qui vous importez avec le require_once () fonction.

  2. Créer votre nouvelle classe avec le étend mot-clé.

    Lorsque vous définissez la classe, si vous utilisez le étend mot-clé pour indiquer quelle classe vous héritez, votre nouvelle classe va commencer avec toutes les propriétés et les méthodes de la classe parente.

  3. Vous pouvez accéder aux éléments publics et protégés de la société mère, mais pas ceux privés.

    Si une propriété ou méthode a été définie comme privée dans la classe d'origine, il est vraiment l'affaire de personne d'autre. Pas d'autres fragments de code peuvent accéder à cet élément. En général cependant, lorsque vous héritez d'une classe, la nouvelle classe de l'enfant devrait avoir accès à des éléments de la classe parente. Voilà pourquoi vous devez créer des propriétés que protégé plutôt que privé.

  4. Ajouter de nouvelles propriétés et méthodes.

    Vous pouvez étendre votre nouvelle classe avec des propriétés et méthodes supplémentaires que le parent n'a pas eu. La BitterCritter dispose désormais d'un glower () méthode qui bestioles ordinaires ne possèdent pas.

  5. Vous pouvez aussi remplacer le comportement des parents.

    Si vous redéfinissez une méthode que la classe parent avait, vous changez le comportement de la nouvelle classe. Cela vous permet de modifier les comportements existants (une forme d'une idée orienté objet appelé polymorphisme).

Cette démonstration est juste le strict aperçu de la programmation orientée objet. Il ya beaucoup plus à cette forme de développement de logiciels, mais les bases sont tous ici. Bien que vous ne pourriez pas voir immédiatement la nécessité de construire vos propres objets à partir de zéro, vous aurez certainement rencontrer code PHP orienté objet que vous commencez à explorer des idées plus complexes comme la programmation de données et des systèmes de gestion de contenu.


» » » » Comment utiliser l'héritage en php avec la programmation orientée objet