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 :

variables et méthodes static


Sujet :

avec Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 53
    Points : 29
    Points
    29
    Par défaut variables et méthodes static
    Bonjour, j'ai besoin d'un peu aide dans la gestion des méthodes static. J'ai créée une classe Cutilisateur avec pour variable statique une linked list d'utilisateurs.
    Voici ma procédure d'ajout à la liste : est elle bonne?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
         public void ajout_ut(){
            liste_ut.add(this);
        }
    dois-je ajouter un static en début de signature? je ne vois pa s'il fauten mettre un vu que l'ajout est quand même lié à unobjet de la classe.

    De même j'ai crée une procédure d'affichage des informations de l'utilisateur et de la liste :

    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
        //affichage des cractéristiques de l'utilisateur
        public void afficher_infos(){
            System.out.println(identifiant);
            System.out.println(mot_de_passe);
        }
     
     
        affichage de la liste de sutilisateurs
        static public void afficher_liste(){
         Iterator iter;
           iter = liste_ut.iterator();
           while (iter.hasNext() ){
               Cutilisateur ut =(Cutilisateur) iter.next();
               ut.afficher_infos();
               }
           }
    comment faire appel à la méthode static dans une autre classe? merci d'avance pour votre aide!

  2. #2
    Membre régulier
    Inscrit en
    Juin 2008
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 127
    Points : 76
    Points
    76
    Par défaut
    Pour appeler une méthode static depuis n'importe ou dans le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NomDeClasse.nomDeMethode();
    donc ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cutilisateur.afficher_liste()
    Après je valide pas forcément la démarche. Et surtout pas la façon de nommer tes classes et méthodes (Cf convention de nommage).
    Le GridBagLayout est mon ami ! (mais si, mais si...)

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    764
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 764
    Points : 909
    Points
    909
    Par défaut
    Citation Envoyé par aurelie689 Voir le message
    J'ai créée une classe Cutilisateur avec pour variable statique une linked list d'utilisateurs.
    Voici ma procédure d'ajout à la liste [...] dois-je ajouter un static en début de signature? je ne vois pa s'il fauten mettre un vu que l'ajout est quand même lié à unobjet de la classe.
    Étant donné que tu ajoutes à la liste l'objet "this", c'est-à-dire l'instance à laquelle la méthode est appliquée, tu ne peux pas définir cette méthode comme une méthode statique. Que représenterait this dans un appel statique ???
    D'ailleurs un essai t'aurait rapidement montré que le compilateur ne l'accepte pas...

    Citation Envoyé par aurelie689 Voir le message
    comment faire appel à la méthode static dans une autre classe?
    Pour appeler la méthode "maMethodeStatique" de la classe "MaClasse", écrire tout simplement MaClasse.maMethodeStatique();.

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 53
    Points : 29
    Points
    29
    Par défaut
    Merci pour vos informations mais il me reste un problème, la procédure d'ajout à la liste ne fonctionne pas voici l'appel de la procédure dans le main :

    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
    20
    21
    22
    static void creation_ut() throws FileNotFoundException, IOException{
        String nom_fich="test.txt";
        String nom_ut;
        String mdp;
        FileReader fichier = new FileReader (nom_fich); 
        BufferedReader in  = new BufferedReader(fichier);
        String ligne;
        ligne = in.readLine();
        while(ligne!= null){
            while (ligne!="*"){
                
             nom_ut=ligne;   
             System.out.print(nom_ut);
             ligne = in.readLine(); 
             mdp=ligne;
             System.out.println(mdp);
             Cutilisateur ut = new Cutilisateur(nom_ut, mdp);
             ut.ajout_ut();
             ligne=in.readLine();
             Cutilisateur.afficher_liste();
            }
        }
    je ne comprend pas pourquoi la procédure ne marche pas, j'ai bien déclaré la méthode en non static, peut être est-ce du à l'instanciation de l'utiilisateur qui ne fonctionne pas?

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    268
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 268
    Points : 199
    Points
    199
    Par défaut
    Peux tu mettre le code de ta classe CUtilisateur (au moins les champs et le constructeur) ?
    Pensez au tag quand votre problème est réglé !

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

Discussions similaires

  1. Réponses: 9
    Dernier message: 12/04/2007, 17h08
  2. [Java] méthode static et passage de paramètre
    Par tomburn dans le forum Langage
    Réponses: 10
    Dernier message: 11/05/2005, 16h19
  3. [FLASH MX2004] [AS2] Classe méthodes static
    Par bolo dans le forum ActionScript 1 & ActionScript 2
    Réponses: 2
    Dernier message: 16/12/2004, 18h26
  4. [debutant] Méthode static
    Par iago dans le forum Langage
    Réponses: 12
    Dernier message: 25/11/2004, 17h09
  5. thread et méthodes static
    Par sylpichard dans le forum MFC
    Réponses: 3
    Dernier message: 02/06/2004, 17h12

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