IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

POO gestion de l'héritage


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de LhIaScZkTer
    Inscrit en
    Mai 2004
    Messages
    564
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2004
    Messages : 564
    Par défaut POO gestion de l'héritage
    Bonjour à tous,

    Je me pose une question concernant l'héritage en PHP. Voilà le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    class Mere{
     
    	public function __construct(){
    		echo "Je suis la mère";
    	}
    }
    class Fille extends Mere{
     
    	public function __construct(){
    		echo "Je suis la fille";
    	}
    }
     
     
    $obj = new Fille();
    Pourquoi est-ce que lors de la création d'un objet Fille le constructeur de la class Mère n'est-il pas appelé ? Ce même exemple en Java, pour ne citer que ce langage, aurait affiché : Je suis la mère suivi de Je suis la fille.

    Merci à tous pour votre aide

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    625
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 625
    Par défaut
    En effet le comportement de PHP est différent.
    Il te faut faire un appel explicite au constructeur de la superclasse :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    class Fille extends Mere{
     
    	public function __construct(){
                    parent::__construct(); 
    		echo "Je suis la fille";
    	}
    }

Discussions similaires

  1. [POO] Un Problème d'héritage?
    Par redsaint0 dans le forum Langage
    Réponses: 6
    Dernier message: 01/06/2007, 16h44
  2. [POO] Gestion des exception avec php4
    Par mulot49 dans le forum Langage
    Réponses: 1
    Dernier message: 26/04/2007, 10h18
  3. [POO] Gestion d'un tableau en attribut
    Par Shandler dans le forum Langage
    Réponses: 4
    Dernier message: 18/01/2007, 21h48
  4. [UML] Gestion boite mail : héritage et attributs
    Par RaelRiaK dans le forum UML
    Réponses: 2
    Dernier message: 10/01/2007, 09h37
  5. Réponses: 3
    Dernier message: 30/08/2006, 15h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo