Encore une erreur non-static method [Résolu]

Signaler
Messages postés
6
Date d'inscription
vendredi 26 janvier 2007
Statut
Membre
Dernière intervention
4 janvier 2008
-
Messages postés
2
Date d'inscription
mardi 4 décembre 2007
Statut
Membre
Dernière intervention
4 août 2009
-
Ayant bloqué sur un autre projet java (ou j'ai aussi posté une question), je me retrouve de nouveau bloqué.

Voici mon code :

Login.java :
    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
        setVisible(false);
        nom = jTextField1.getText() ;
        passwd = jPasswordField1.getPassword() ;
        Main.connex();
    }

    ( ... )

    public String returnNom(){
        return nom ;
    }
    public String returnPasswd(){
        password = new String(passwd) ;
        return password ;
    }

       ( ... )

    private javax.swing.JPasswordField jPasswordField1;
    private javax.swing.JTextField jTextField1;

Main.java :
    jTextField1 = new javax.swing.JTextField(); 
    jPasswordField1 = new javax.swing.JPasswordField();
   
       ( ... )

    public void connex () {

        new connexion().setVisible(true) ;
        login = Login.returnNom() ;
        passwd = Login.returnPasswd() ;
        try {
         
          Class.forName("com.mysql.jdbc.Driver") ; 
          Connection connexion = DriverManager.getConnection("jdbc:mysql://localhost/kop", login , passwd);
          Statement instruction = connexion.createStatement();
         
        }
        catch (SQLException ex){
        JOptionPane.showMessageDialog(null, "JDBC Fehler:\n"+ex.getMessage());
        }
        catch (ClassNotFoundException ex){
           
        }

}

et j'ai comme erreur (la ou c'est bleu) :
Login.java:116: non-static method connex() cannot be referenced from a static context

Main.java:24: non-static method returnNom() cannot be referenced from a static context

Main.java:25: non-static method returnPasswd() cannot be referenced from a static context

Merci d'avance pour votre aide

5 réponses

Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
115
Salut,

Ok, donc à ce moment là, il te faut créer une instance de classe :

Main instance = new Main();
instance.connex();

______________________________________
DarK Sidious
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
115
Salut,

Ben comme le dit l'erreur, les méthodes que tu essaye d'appeler de façon static (sans instance d'une classe) ne le sont pas :

public static void connex () {...}

A moins que ton but n'était pas de les appeler de façon static...
______________________________________
DarK Sidious
Messages postés
6
Date d'inscription
vendredi 26 janvier 2007
Statut
Membre
Dernière intervention
4 janvier 2008

les appelés de facon static n'était pas mon but...
Messages postés
6
Date d'inscription
vendredi 26 janvier 2007
Statut
Membre
Dernière intervention
4 janvier 2008

merci :) je vais faire ca
Messages postés
2
Date d'inscription
mardi 4 décembre 2007
Statut
Membre
Dernière intervention
4 août 2009

salam