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 :

problème avec les accesseurs (getters)


Sujet :

avec Java

  1. #1
    Nouveau membre du Club Avatar de gautier1er
    Homme Profil pro
    Developpeur C et PHP
    Inscrit en
    Août 2017
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Developpeur C et PHP

    Informations forums :
    Inscription : Août 2017
    Messages : 61
    Points : 32
    Points
    32
    Par défaut problème avec les accesseurs (getters)
    Code java : 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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    public class Document {
    
        //attributs 
        private int numero;
        private String titre;
        
         //constructeur
        public Document(int numero,String titre)
        {
         this.numero=numero;
         this.titre=titre;
        }
        
        //ACCESSEURS
        //1ère methode 
             public int getNumero()
             {
              return this.numero;   
             }
    	
    	 public String getTitre()
             {
             return this.titre;   
             }
    
    	
    	//2ème methode
    
    	public int getNumero()
    	{
    	  return numero;
    	}
    	
           public String getTitre()
          {
            return titre;   
          }
    
        
    }


    Quelle est la bonne méthode (première ou deuxième )?

  2. #2
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Salut,

    C'est exactement la même chose dans les deux cas : ça va fonctionner et donner le même résultat.

    La première manière est peut-être plus rigoureuse. L'emploi du this. explicite lorsqu'il n'est pas indispensable va être sujet à débat entre développeurs. Pour moi, les deux sont acceptables, et, préférant le code le plus concis, je m'abstiendrais de mettre un this. explicite dans ce cas. Je suis partisan du "l'implicite quand l'explicite n'est pas indispensable (soit techniquement, soit pour la compréhension du code)". Donc, j'écris plutôt mes méthodes avec la seconde manière (sauf bien sûr pour les accolades que je mets à la manière Java, pas C ).
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  3. #3
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    La bonne méthode c'est celle qui est consistante dans tout ton programme. C'est une question de convention. La convention choisie est peu importante, ce qui est important c'est de la respecter.

  4. #4
    Nouveau membre du Club Avatar de gautier1er
    Homme Profil pro
    Developpeur C et PHP
    Inscrit en
    Août 2017
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Developpeur C et PHP

    Informations forums :
    Inscription : Août 2017
    Messages : 61
    Points : 32
    Points
    32
    Par défaut
    Si je commence avec this.numero alors je continue toujours avec this.numero dans le reste de mon code ? En claire pas de numero mais plutôt this.numero

  5. #5
    Nouveau membre du Club Avatar de gautier1er
    Homme Profil pro
    Developpeur C et PHP
    Inscrit en
    Août 2017
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Developpeur C et PHP

    Informations forums :
    Inscription : Août 2017
    Messages : 61
    Points : 32
    Points
    32
    Par défaut
    Toujours dans la même classe

    Code java : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
       
    //1ère méthode
        public String toString()
        {
            String ch=new String("n°:"+ numero + "titre:"+ titre );
         return ch ;   
        }
    
    
    //2ème méthode
       public String toString()
        {
            String ch=new String("numero:"+ getNumero() + "titre:"+ getTitre() );
         return ch ;   
        }

  6. #6
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par gautier1er Voir le message
    Si je commence avec this.numero alors je continue toujours avec this.numero dans le reste de mon code ? En claire pas de numero mais plutôt this.numero
    En clair tu te fixe une convention et tu la suis

    soit tu applique systématiquement this
    soit uniquement en cas d'ambiguité
    soit uniquement en setter
    etc.
    tous les gouts sont dans la nature.


    Par contre, pour le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String ch=new String("n°:"+ numero + "titre:"+ titre );


    tu construis un String (la concaténation de 4 éléments), puis tu en fais une nouvelle String avec new String. D'une manière générale, en débutant, oublie que le constructeur existe sur String, tu n'aura pas besoin de l'appeler directement.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String ch="n°:"+ numero + "titre:"+ titre;

  7. #7
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    En fait, juste

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    return "n°:" + numero + "titre:" + titre;
    et envisager si on préfère pas l'usage de String.format() :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    return String.format("n°: %d titre: %s", numero, titre);
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  8. #8
    Nouveau membre du Club Avatar de gautier1er
    Homme Profil pro
    Developpeur C et PHP
    Inscrit en
    Août 2017
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Developpeur C et PHP

    Informations forums :
    Inscription : Août 2017
    Messages : 61
    Points : 32
    Points
    32
    Par défaut
    merci

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

Discussions similaires

  1. [VALA] Problèmes avec les accesseurs
    Par Gamall dans le forum GTK+
    Réponses: 9
    Dernier message: 18/03/2010, 12h06
  2. [Postgresql]Problème avec les fonctions ...
    Par fet dans le forum Requêtes
    Réponses: 4
    Dernier message: 02/10/2003, 09h04
  3. Problème avec les apostrophes
    Par misterbillyboy dans le forum Requêtes
    Réponses: 2
    Dernier message: 15/07/2003, 16h39
  4. Problème avec les fichiers .JPG
    Par cprogil dans le forum Langage
    Réponses: 5
    Dernier message: 10/06/2003, 15h44
  5. []Problème avec les formulaires Outlook
    Par davidinfo dans le forum Outlook
    Réponses: 6
    Dernier message: 05/12/2002, 09h59

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