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 Java Discussion :

Variable publique dans main ?


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 51
    Par défaut Variable publique dans main ?
    Bonjour,

    j'aurai voulu savoir si il était possible de déclarer une variable publique dans le main.

    En effet, j'ai besoin d'une variable dans toutes mes fonctions de mon programme mais je ne veux pas la passer en paramètre et cette variable doit être initialisée dans une de ces fonctions. Comment puis je faire ?

    Merci

  2. #2
    Membre Expert
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Par défaut
    Tu peux utiliser une variable statique qui sera initialisé par une méthode elle aussi statique.


    Mes publications
    Lisez
    Les régles du forum
    Pensez au bouton

  3. #3
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 51
    Par défaut
    Merci mais en fait ya un autre problème. Voilà l'idée, je sens à l'avance que ça va foirer...

    - lecture d'un fichier pour initialiser n
    - initialisation d'une variable n avec la valeur trouvée dans le fichier
    - n doit être accessible partout
    - création d'un tab = new int[n]
    - tab doit être accessible partout aussi


    Alors ta solution me va mais elle m'embête quand il faut déclarer un tableau pour tout le programme...

    Une idée ?

  4. #4
    Membre Expert
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Par défaut
    Je ne vois pas trop où est le problème...
    Tu peux initialiser ton tableau après avoir récupérer n et ceci toujours par l'intermédiaire d'une méthode statique.


    Mes publications
    Lisez
    Les régles du forum
    Pensez au bouton

  5. #5
    in
    in est déconnecté
    Membre Expert Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    class Test {
     
     int n;
     int[] tab;
     
     
     .....
     
     construct(int i) {
     
         n = i;
         tab = new int[n];
     }
     
     
     int lectureFichier() {
     ...
     }
     
     main() {
     
         Test t = new Test(lectureFichier);
     
     
     }
     
     
    }
    par exemple. Mais ya plein de manières différentes de le faire.

    Enfin je comprends pas le pb ptet ?

  6. #6
    Membre éprouvé
    Avatar de mavina
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    1 812
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 812
    Par défaut
    Citation Envoyé par in
    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
    23
    24
    25
    26
    27
    28
    29
    class Test {
    
     int n;
     int[] tab;
    
    
     .....
    
     construct(int i) {
         
         n = i;
         tab = new int[n];
     }
     
    
     static int lectureFichier() {
     ...
     }
    
     main() {
    
         Test t = new Test(lectureFichier);
         
    
     }
    
    
    }
    par exemple. Mais ya plein de manières différentes de le faire.

    Enfin je comprends pas le pb ptet ?
    Salut,

    Attention, si tu ne mets pas static, tu auras un
    non static function lectureFichier cannot be referenced from a static context
    Fred

  7. #7
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 51
    Par défaut
    Bon vous allez vous marrer alors rigolez pas trop fort...

    Je me rappelais plus que je pouvais déclarer ma variable et l'initialiser plus loin... Oups

    Dernière chose au vu des codes proposées : pourquoi si je met pas static pour ma méthode main, il ne veut pas exécuter ?
    Il me renvoie :

    Exception in thread "main" java.lang.NoSuchMethodError: main

    Merci !

  8. #8
    in
    in est déconnecté
    Membre Expert Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Par défaut
    Citation Envoyé par mavina
    Attention, si tu ne mets pas static ...
    oui je sais mais comme tu as pu le remarquer mon code ne respectait pas grand chose. C'était surtout pour la déclaration/initialisation des variables ...


    Citation Envoyé par Magicien d'Oz
    Bon vous allez vous marrer alors rigolez pas trop fort...



    désolé aussi

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 23/04/2008, 09h40
  2. Réponses: 6
    Dernier message: 05/03/2008, 15h52
  3. Réponses: 3
    Dernier message: 16/01/2008, 09h07
  4. Utilisation d'une variable publique dans une DLL
    Par Delphi-ne dans le forum Delphi
    Réponses: 13
    Dernier message: 05/12/2006, 13h19
  5. Réponses: 6
    Dernier message: 23/09/2005, 12h54

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