Erro

Ólá!!

Pessoal,

O seguinte código:

[code]public class Principal {

            static int idade;

public static void main(String[] args) {
	 
	idade = idade + 1;
	System.out.println("A idade é: "+idade);
}

}[/code]

Imprime 1 certo ?!

E este:

[code]public class Principal {

    public static void main(String[] args) {
    	
    	int idade;
    	
		idade = idade + 1;

		System.out.println("A idade é: "+idade);
    	}

}[/code]

Por que dá erro???

Quando vc declara uma variável de classe ela entra com um valor default, no caso do int é 0, quando vc declara uma varial local ela nao ganha valor default, entao a variavel nao foi inicializada te mostrando o erro.

Cara uma dica, leia os conceitos básicos da linguagem, assim você poupa inúmeras dores de cabeça no futuro.

Variáveis de classe sempre são inicializadas com valores “negativos” int com zero booelan com false e objetos com null. Em java variáveis com escopo local (em métodos) precisam sempre ser inicializadas. Como é o caso do segundo código que você postou. Não sei por que em java é feito isso, acho que é alguma herança do C, pois se você não inicializasse as variárveis, era grande a probabilidade de vir “lixo”

Bons estudos e espero ter ajudado!

Valew!!

:slight_smile: