public class Criptografia {
private static MessageDigest md = null;
static {
try {
md = MessageDigest.getInstance("MD5");
} catch (NoSuchAlgorithmException ex) {
ex.printStackTrace();
}
}
//demais métodos
}
alguém pode me explicar a função daquele static ali? peguei este trecho algum tempo atrás e não intendi a função dele. desde já eu agradeço
Aquele bloco static será executado na primeira vez (e apenas na primeira vez) que a classe for carregada pela JVM.
O que o kicolobo disse esta correto.
Para entender melhor faça uma teste, compile e execute a classe abaixo e tire suas próprias conclusões.
[code]
public class TestandoStatic {
static {
System.out.println (“Carregando a classe”);
}
public TestandoStatic () {
System.out.println ("Criando um objeto.");
}
public static void main (String args[]){
TestandoStatic a = new TestandoStatic ();
TestandoStatic b = new TestandoStatic ();
TestandoStatic c = new TestandoStatic ();
TestandoStatic d = new TestandoStatic ();
TestandoStatic e = new TestandoStatic ();
}
}[/code]
bah, bastante simples mesmo!
valeu ae !!! 
Confesso que não conhecia esse uso do static…
É comum encontrar clocos static assim?
Eu nunca vi, mas achei muito interessante!
