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

Flex Discussion :

Plusieurs constructeurs pour une classe [Flex4]


Sujet :

Flex

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Plusieurs constructeurs pour une classe
    Bonjour à toutes et à tous.

    Voilà quelques jours que je me suis mis au Flex et j'ai (malheureusement) remarqué qu'il est impossible de faire plusieurs constructeurs pour une classe.

    J'ai une classe UtilisateurVO et je veux un constructeur UtilisateurVO(String login, String password) et un UtilisateurVO(int id) par exemple.

    Y a-t-il une "bonne pratique" Flex pour palier à cet inconvénient ?

    Merci de votre contribution

  2. #2
    Membre habitué
    Homme Profil pro
    Tech Lead
    Inscrit en
    Novembre 2006
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Tech Lead
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Novembre 2006
    Messages : 120
    Points : 169
    Points
    169
    Par défaut
    Hello,

    Compte tenu que AS3 autorise les paramètres par défaut, je pense que je ferai quelque chose comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    public function UtilisateurVo(login:String="", password:String="", id:int=-1){
      //logique de test pour vérifier qu'on a les bon parametres pour les
      //les différentes instanciation
      var isfromLoginPass:Boolean=checkParamsForLogin(login, password);
      var isFromId:Number=checkParamsForId(id);
      if(isfromLoginPass){
        initObjectByLogin(login, password);
      } else if(isFromId) {
        initObjectById(id);
      } else {
        throw IllegalOperationError("paramètres non valide pour la construction de l'objet");
      }
    }
    Voilà comment je ferai, à ma connaissance il n'y a pas de méthodes propres pour palier à l'absence de surcharge de constructeur en AS3.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Public function UtilisateurVo( pIdLog:Object, pPasswd:String="" )
    {
          if( pIdLog is String ) // c'est le login
          {
                 initObjectByLogin(pIdLog as String, pPasswd);
          }
          else
                 initObjectById(pIdLog as int);
    }
    Cette methode te permet d'appeler la même fonction de la manière que tu voulais
    UtilisateurVO(String login, String password) et
    UtilisateurVO(int id)

    En action script tout élément hérite d'Object tu peux dont te servir de cette classe pour faire passer autant de types différents pour un même paramètre, que tu le souhaite.

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Merci pour vos réponses.

    Et surtout (messages pour les novices comme moi) ne pas oublier d'initialiser la valeur des paramètres du constructeur !!

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 29/04/2008, 12h05
  2. Réponses: 3
    Dernier message: 01/06/2007, 10h12
  3. Réponses: 5
    Dernier message: 30/01/2007, 13h23
  4. [POO] Deux constructeurs pour une même classe
    Par amika dans le forum Langage
    Réponses: 4
    Dernier message: 16/12/2006, 16h31
  5. [c#] Plusieurs constructeurs dans une classe
    Par Seth77 dans le forum C#
    Réponses: 3
    Dernier message: 04/09/2006, 12h28

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