Bonjour,

Quelqu'un peut m'expliquer pourquoi, si je n'initialise pas la variable b, j'ai une erreur de compilation (variable non initialisé):


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
Class popo{

int a;

public void main (void){
int b;

System.out.print("a : " + a + " b : " + b);

 }
}


mais, si elle l'est :



Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
Class popo{

int a;

public void main (void){
int b = 0;

System.out.print("a : " + a + " b : " + b);

 }
}
et bien, ca compile et ca donne :


pourquoi le compil initialise les variables globales et pas locales ?

Merci.