Bonjour à vous,

j'aimerais à partir d'une classe main lancer une méthode appartenant à une classe distante.

Dans la méthode, j'instancie un objet dont le constructeur est encore dans une autre classe et je le met dans un tableau, mais cela marche pas : erreur de compilation "java.lang.nullpointerexception".
Avec des recherches, j'ai trouvé que ce message d'erreur apparait quand on instancie pas un objet avec "new", pourtant je l'ai fait pour ma part.

sans la clause "try" dans la methode srcEnregistrerMembre de la classe Cineclub, j'ai deux erreur lors de l'exécution de test.java

okException in thread "main" java.lang.NullPointerException
at Cineclub.srcEnregistrerMembre(Cineclub.java:22)
at test.main(test.java:6)

Avec la clause "try" j'obtient cela :

ok
Exception capturÚe: null




Voici les 3 classes, elles sont assez courtes:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
class test {
 
public static void main(String args[]){
 
Cineclub cine1 = new Cineclub(1,"MEGA"); // j'ai bien instancié l'objet cine1
 
cine1.srcEnregistrerMembre();
 
 
}}

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
30
31
 
public class Cineclub{
 
Membre membres[];
int nbrMembres = 0;
int numero;
String nom;
 
//le constructeur
 
public Cineclub (int id, String nomCine){
nom=nomCine;
numero=id;
 
}
 
//la méthode qui pose un problème
 
public void srcEnregistrerMembre(){
try{
System.out.print("ok");
membres[nbrMembres++] = new Membre ("francis","Alexandre",6,10);
System.out.println(membres[1].nom); // rien ne s'affiche
}
 catch (Exception e) {
      System.out.println("Exception capturée: " + e.getMessage());
   }
}
 
 
}
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
 
public class Membre{
 
public String nom, prenom;
public int categorie;
public int nb_films_vus;
public int nbstat=0;
 
public Membre (String n, String pre, int cat, int nb_films){
 
nom=n;
prenom=pre;
categorie=cat;
nb_films_vus=nb_films;
 
}
 
public int srcafficherstats(){
return nbstat;
}
 
 
}

Je suis bloqué sur ce problème, ce serait sympa si vous pouviez m'aider.

Merci d'avance.