Je crois que variable de classe est une juste un autre nom pour une variable static
car comme le disait "kij_82": "Une variable de classe est une variable qui sera commune à toutes les instances de cette classe"
Ainsi si tu as la classe suivante:
public class MaClass {
public int VarInstance= 0;
public static int VarDeClass= 0;
}
...et que tu l'utilises comme ça:
MaClass a = new MaClass();
MaClass b = new MaClass();
System.out.println("Avant...");
System.out.println("A: Var inst="+a.VarInstance+", class="+a.VarDeClass);
System.out.println("B: Var inst="+b.VarInstance+", class="+b.VarDeClass);
a.VarInstance = 1;
a.VarDeClass = 1;
b.VarInstance = 2;
b.VarDeClass = 2;
System.out.println("Apres...");
System.out.println("A: Var inst="+a.VarInstance+", class="+a.VarDeClass);
System.out.println("B: Var inst="+b.VarInstance+", class="+b.VarDeClass);
... tu obtiendras ça:
Avant...
A: Var inst=0, class=0
B: Var inst=0, class=0
Apres...
A: Var inst=1, class=2
B: Var inst=2, class=2
Truc intéressant (je sais pas si c'est le cas dans tous les langages) mais en java par tu peux aussi faire ce que j'appellerais par extension des "METHODES de classes" ce qui implique que tu n'as pas besoin de systématiquement instancier ta class pour utiliser ta méthode !
exemple:
public class MaClass {
public static void showCoucou() {
System.out.print("coucou");
}
}
Il suffira d'ecrire:
MaClass.ShowCoucou();
Mais c un truc qu'on utilise tous hyper souvent en fait, rien que System.out.print() en est un example ! :p
merci.
Tu voulais dire variable d'instance ici. T as dit 2 fois variables de classe.