distruction d'une instance
Bonjour,
j'ai créé une classe :
Code:
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
|
//exemple de création d'une classe
public class ClassTest {
private int pVal;
private static int pNbrObjetsDeLaclasse = 0;
public ClassTest(){
pVal = 0;
pNbrObjetsDeLaclasse++;
}
public void setVal(int v){
pVal = v;
}
public int getVal(){
return pVal;
}
public static int getNbInstance(){
return pNbrObjetsDeLaclasse;
}
public void close(){
pNbrObjetsDeLaclasse--;
}
} |
comment faire pour détruire une instance de la classe pour qu'elle ne prenne plus d'espace mémoire ?
pour le moment je fais ça :
Code:
1 2 3 4 5 6 7 8 9 10
|
ClassTest monObjet1 = new ClassTest();
monObjet1.setVal(10);
ClassTest monObjet2 = new ClassTest();
monObjet2.close();
monObjet2 = null;
System.out.println("Valeur = " + monObjet1.getVal());
System.out.println("Nombre d'instances en cours : " + monObjet1.getNbInstance()); |
=> est-ce que monObjet2 est bien détruit en mémoire ?
=> n'est-il pas possible de le détruire en une seule commande (attention, il faut mettre à jour pNbrObjetsDeLaclasse avant sa destruction) ?