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] Appel de méthode d'un instance fille


Sujet :

Langage PHP

  1. #1
    Membre confirmé
    Avatar de geforce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    1 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 055
    Points : 559
    Points
    559
    Par défaut [POO] Appel de méthode d'un instance fille
    Bonjour,

    Je cherche à appeler une méthode de la classe fils avec une instance de la classe fils mais à partir d’une méthode de la classe mère (que je n’est pas redéfinit)
    Je c’est un peut tordu mais j’ai réfléchit a self: :

    C’est possible de faire une chose pareille avec self: : ?

    Cordialement
    GeForce

  2. #2
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 234
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 234
    Points : 15 531
    Points
    15 531
    Par défaut
    Est ce que tu peux nous montrer un petit bout de code d'exemple, même s'il ne fonctionne pas

    est ce que tu utilises PHP 5.3 ?

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

    Informations forums :
    Inscription : Mars 2005
    Messages : 625
    Points : 822
    Points
    822
    Par défaut
    Une classe n'a pas à s'appuyer sur une autre hypothétique classe qui en dérive. À moins d'une classe abstraite obligeant la définition d'une méthode dans sa dérivée.

    C'est néanmoins une manière de faire un peu limite, propice à la génération de bugs.
    Pourfendeur de singletons en croisade

  4. #4
    Membre expérimenté Avatar de yann2
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2004
    Messages
    897
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 897
    Points : 1 635
    Points
    1 635
    Par défaut
    Citation Envoyé par Petibidon Voir le message
    À moins d'une classe abstraite obligeant la définition d'une méthode dans sa dérivée.

    C'est néanmoins une manière de faire un peu limite, propice à la génération de bugs.
    Euh non... les classes abstraites servent justement à répondre à ce problème. Ce n'est en aucun cas un cas marginal. Ou alors j'ai mal compris ce que tu disais.

  5. #5
    Membre confirmé
    Avatar de geforce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    1 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 055
    Points : 559
    Points
    559
    Par défaut
    Bonjour,

    Alors C’est possible de faire une chose pareille avec self: : ?

    merci

  6. #6
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 234
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 234
    Points : 15 531
    Points
    15 531
    Par défaut
    je n'ai toujours pas compris ce que tu veux faire
    Citation Envoyé par mathieu Voir le message
    Est ce que tu peux nous montrer un petit bout de code d'exemple, même s'il ne fonctionne pas

    est ce que tu utilises PHP 5.3 ?

  7. #7
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Bonjour,

    comme ceci, tout simplement avec $this-> :
    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
    16
    17
    18
    19
     
    abstract class personne {
        public function __construct(){
           echo $this->sexe();
        }
        abstract public function sexe();
    }
     
    class femme extends personne {
        public function sexe(){
            return 'female';
        }
    }
     
    class homme extends personne {
        public function sexe(){
            return 'male';
        }
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $f = new femme;
    $h = new homme;

Discussions similaires

  1. Réponses: 7
    Dernier message: 19/03/2007, 20h25
  2. Réponses: 3
    Dernier message: 05/10/2006, 18h52
  3. [POO] Appeler une méthode redéfinie de la classe parente
    Par Djakisback dans le forum Langage
    Réponses: 5
    Dernier message: 04/08/2006, 22h56
  4. [POO]Appelé une méthode d'une classe mère
    Par LE NEINDRE dans le forum Langage
    Réponses: 2
    Dernier message: 14/12/2005, 14h44

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