Seguinte…reparem os 3 trechos de codigo a seguir :
1º exemplo :
[code]public class VarFinalandStatic1 {
private final int i ;
public VarFinalandStatic1(){
this.i = 10;
}
}[/code]
2º exemplo :
[code]class VarFinalandStatic2{
private static int i ;
public VarFinalandStatic2(){
i = 10;
}
}[/code]
3º xemplo:
[code]class VarFinalandStatic3{
static final int i=10;
public VarFinalandStatic3(){
}
}[/code]
Gostaria de saber, porque este proximo exemplo…não compilará …e se isso ocorre pelo fato de eu estar utilizando os modificadores “static” e “final” junto…
reparando no 3º exemplo…em que é feita uma declaração e atribuição juntas…acaba funcionando OK…
mas porque o simples fato de deixar para inicializar a variavel membro final dentro do construtor( que até aonde eu sabia…era possivel…) faz com que isso nao compile?
se nao for por causa disso… porque então ?
[code]class VarFinalandStatic4{
static final int i;
public VarFinalandStatic4(){
i = 10;
}
}[/code]
Obrigado pessoal!!!