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] "Sub"classes


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Avatar de Anduriel
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Février 2004
    Messages
    2 290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration

    Informations forums :
    Inscription : Février 2004
    Messages : 2 290
    Par défaut [POO] "Sub"classes
    Salut,

    Actuellement je sais et vois l'utilité d'utiliser les classes comme ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $obj =& new obj;
    $obj->function();
    Mais parfois je vois ce code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $obj=& new obj;
    $obj->chaine->function();
    A quoi ça correspond et comment est présentée une classe comme ça?
    Merci

  2. #2
    Membre Expert Avatar de Bebel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2003
    Messages : 786
    Par défaut
    Je pense que c'est une simple composition. ou 'obj' et compose par la classe de 'chaine' et alors dans le 2ième cas, on appelle la méthode 'function' de la class de 'chaine'.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    882
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 882
    Par défaut
    salut
    pour moi le premier cas represente juste la creation d'un objet et l'utilisation d'une methode

    et le deuxieme cas je dirai que cette une agregation(note je suis tout sauf a l'aise avec ces notions)
    c'est a dire que chaine est un attribut qui est instancier par un objet
    obj contient a AutreObj mais leur durée de vie ne sont pas lier(je crois)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    class obj
    {
    var $chaine
    function obj()
    {
    $this->chaine = new AutreObj();
    }
    attendons une explication clair

  4. #4
    Membre éprouvé
    Avatar de Anduriel
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Février 2004
    Messages
    2 290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration

    Informations forums :
    Inscription : Février 2004
    Messages : 2 290
    Par défaut
    Si ca va ça m'éclaire un peu plus quand même.

    Et en une simple en français ça peu donner quoi?
    Genre c'est un objet qui appelle une fonction d'une autre classe?

    Merci

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    882
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 882
    Par défaut
    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
    class obj
    {
    var $chaine
    function obj()
    {
    $this->chaine = new AutreObj();
    }
    }
     
    class AutreObl
    {
    function bonjour()
    {
    echo 'bonjour';
    }
    }
     
    $obj = new obj();
    $obj->chaine->bonjour();//affiche bonjour normalement
    mais y a des chance que cela ne fonction pas car je connai pas tros la syntaxe

  6. #6
    Membre éprouvé
    Avatar de Anduriel
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Février 2004
    Messages
    2 290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration

    Informations forums :
    Inscription : Février 2004
    Messages : 2 290
    Par défaut
    Merci

+ Répondre à la discussion
Cette discussion est résolue.

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