Esse código não compila pois o J não foi inicializado, segundo o que eu entendo quando vc declara um tipo primitivo int
ele vem com zero, logo ele já foi inicializado.
Mas pelo visto estou errado, alguém poderia me explicar
e dentro de um método é necessário inicializar com algum valor.
Daniel_T_S
javahunter:
a variável j esta dentro de um método.
e dentro de um método é necessário inicializar com algum valor.
Exatamente. Apenas as variáveis de instância (definidas fora de métodos) são inicializadas com valores padrão. Uma variável local precisa ser inicializada antes do uso.
jcranky
Acho que o mais interessante aqui é diferenciar variáveis locais, que existem apenas dentro de métodos e sempre precisam ser inicializadas, de atributos de classes, que tem valores iniciais padrão, caso você não coloque nada.
C
CaioCorrea
Acho que a galera já explicou bem, mas só para complementar: