O que esse código faz?

3 respostas
theodrums
public class Cod{
    private int x;

    //ESSE STATIC AQUI, O Q SIGNIFICA ESSA LOUCURA AQUI !?
    static{
        //código insando
    }

}

3 Respostas

Felagund

é um codigo executado quando a classe é carregada no classpath.

Class.forName por exemplo.

ViniGodoy

Imagine que um dos campos estáticos da sua classe seja uma lista, e que ela precise ser inicializada com os valores "Paraná", "Santa Catarina" e "Rio grande do Sul". Como você faria a inicialização, se atributos estáticos existem na classe, e não numa instância específica?

Você pode usar para isso um bloco de inicialização estático:

public class X {
    public static List<String> estados;

   static {
        estados = new ArrayList<String>();
        estados.add("Paraná");
        estados.add("Santa Catarina");
        estados.add("Rio Grande do Sul");
        estados = Collections.unmodifiableList(estados);
   }
}
theodrums

muuuuuito obrigado pessoal!

pelo q eu entendi é tipo um construtor das variáveis de classe.

Criado 26 de março de 2010
Ultima resposta 26 de mar. de 2010
Respostas 3
Participantes 3