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

avec Java Discussion :

Appel d'une méthode dans sa définition même,


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 2
    Par défaut Appel d'une méthode dans sa définition même,
    Bonjour à tous,
    Est ce que quelqu'un pourrait m'expliquer le concept de la méthode qui s'appelle elle même dans sa définition, illustré par ce bout de code:

    @Override
    public String toString() {
    StringBuilder sb = new StringBuilder(this.getClass().getSimpleName());
    sb.append("\n\tmarque :").append(getMarque());
    sb.append("\n\tmodele :").append(getModele());
    sb.append("\n\tprix :").append(getPrix()).append("\n");
    return sb.toString();
    }
    Pourquoi la méthode toString fait appel à elle-même dans sa définition?

    Merci de m'eclairer!

  2. #2
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,


    Elle ne s'appelle pas elle même, elle appelle une méthode toString() de la classe StringBuilder, qui permet de générer une chaine de caractère.

    Au passage ce code est complètement illisible et pourrait avantageusement être remplacé par ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    @Override
    public String toString() {
        return this.getClass().getSimpleName() 
            + "\n\tmarque :" + getMarque()
            + "\n\tmodele :" + getModele() 
            + "\n\tprix :" + getPrix() + "\n";
    }
    Il n'y a aucune raison d'utiliser un StringBuilder si on peut faire cela directement en une seule ligne avec l'opérateur +
    Les StringBuilders sont utiles pour construire des chaines plus complexe, en plusieurs étapes...


    a++

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

Discussions similaires

  1. [Dojo] Appel d'une méthode dans une classe JS
    Par ensareab dans le forum Bibliothèques & Frameworks
    Réponses: 1
    Dernier message: 08/03/2011, 10h05
  2. [POO] Appel d'une méthode dans une autre méthode
    Par lisa.a dans le forum Langage
    Réponses: 2
    Dernier message: 21/02/2010, 16h42
  3. Appel d'une méthode dans un dataTable
    Par thomine dans le forum JSF
    Réponses: 2
    Dernier message: 02/11/2009, 11h58
  4. Appel d'une méthode dans une autre webpart
    Par horn33t dans le forum C#
    Réponses: 1
    Dernier message: 24/07/2009, 13h40
  5. Appel d'une méthode dans une autre webpart
    Par horn33t dans le forum SharePoint
    Réponses: 6
    Dernier message: 24/07/2009, 13h36

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