Meu sistema interno tem a private int senha, como as outras. O sistema esta pedindo que a variável senha se torne final. O que é?
Meu sistema interno tem a private int senha, como as outras. O sistema esta pedindo que a variável senha se torne final. O que é?
Cristiane,
Quando se coloca final em uma variavel, significa que esta terá um valor constante.
Isso deve estar acontecendo por que voce declarou a variavel como privada(private) e não gerou um setter ou um construtor que preencha esta variavel.
Sugiro que crie um construtor ou um setter.
Oi Cristiane, tudo certo?
Como já foi explicado na resposta anterior, a palavra final indica que a variável terá um valor constante, ou seja, não podemos modificar seu valor após a sua primeira atribuição.
Breve exemplo:
final int idade = 26;
Com isso, declaramos uma constante do tipo inteiro, com o nome idade e valor 26, agora não podemos mais modificar o valor da idade.
Segue uma implementação do sistema interno, apenas para comparação:
public class SistemaInterno {
private int senha = 2222;
public void autentica(Autenticavel fa) {
boolean autenticou = fa.autentica(this.senha);
if (autenticou) {
System.out.println("Pode entrar no sistema!");
} else {
System.out.println("Não pode entrar no sistema!");
}
}
}