Récupérer une valeur d'un constructeur dans une métode

Résolu
mikmuk Messages postés 156 Date d'inscription   Statut Membre Dernière intervention   -  
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

Je possède un

public Main() { 
[...] 
JTextField nick = new JTextField(20); 
[...]
}


et j'ai besoin de récupérer la valeur entrée par l'utilisateur lors de l'execution du programme, dans une methode.

Voici ce que j'ai fait:

private void connectDB (ActionEvent e) { 
Main getMain = new Main(); 
  getMain.Main();  
}


Le problème est que le Main n'est pas une méthode donc impossible de récupérer la valeur de cette manière.

Auriez-vous des informations ou un lien qui pourrait me documenter à ce sujet.

Merci.

1 réponse

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
C'est très difficile de comprendre ce que tu fais exactement, car on n'a que deux morceaux de codes pas très explicite. Il est à mon avis une très mauvaise idée d'appeler une classe "Main" si elle contient autre chose que la méthode main, de même qu'appeler un objet "get" ou "set" comme ton "getMain" ce qui fait penser aux méthodes d'accès, sans parler de ce "getMain.Main()", tu utilises le constructeur sur un objet comme s'il s'agissait d'une méthode, c'est très bizarre.

Si j'ai bien compris ce que tu veux, tu voudrais récupérer la valeur de "nick" dans ta seconde méthode, je te propose ceci (je garde les même noms pour ne pas te mélanger, mais il faudrait les changer pour être plus compréhensibles) :

private final JTextField nick;

public Main()
{ 
    // ...
    nick = new JTextField(20); 
    // ...
}

public String getNick()
{
    return nick.getText();
}

private void connectDB (ActionEvent e) 
{ 
    Main getMain = new Main();
    String nick getMain.getNick();  
}
0