Enquanto a programação em Java, pode haver casos em que o desenvolvedor precisa restringir a substituição de algumas funcionalidades específicas. Por exemplo, proteger ou criptografar os dados ou quando há necessidade de armazenar o mesmo valor, sempre. Nesses casos, o “
final”A palavra -chave em Java permite que o desenvolvedor torne os dados confidenciais.
Este blog elaborará o uso da palavra -chave "final" em Java.
Qual é a palavra -chave "final" em java?
O "final”A palavra -chave em Java é utilizada para restringir o usuário de substituir um valor. Funciona de modo que, se uma variável ou uma função for alocada como final, seu valor não pode ser substituído.
O java “final”A palavra -chave pode ser utilizada em muitos contextos:
- Como uma variável.
- Como uma função.
- Como uma classe.
Exemplo 1: Utilização da palavra -chave "final" com variável
Neste exemplo, o “final”A palavra -chave pode ser associada a uma variável e substituída também para analisar seu uso:
final de pontuação int = 35;
pontuação = 45;
Sistema.fora.println (pontuação);
No trecho de código acima:
- Em primeiro lugar, inicialize o valor inteiro declarado e associe o “final”Palavra -chave para tornar seu valor imutável.
- Na próxima etapa, substitua o número inteiro com outro valor e exiba -o.
- Isso resultará na exibição de um erro, pois o valor associado à palavra -chave discutido não pode ser substituído.
Saída
Na saída acima, a exceção encontrada indica que o valor associado ao “final”A palavra -chave não pode ser substituída.
Exemplo 2: Utilização da palavra -chave "final" com função
Nesta ilustração, a palavra -chave discutida pode ser utilizada com uma função acumulada na classe:
ClassParent
public final void out ()
Sistema.fora.println ("Esta é a função padrão");
ClassChildExtendsParent
public void out ()
Sistema.fora.println ("Esta é uma função substituída");
criança obj = novo filho ();
obj.fora();
Nas linhas acima do código:
- Em primeiro lugar, defina uma classe pai chamada “pai”.
- Dentro da classe, defina uma função chamada “fora()" associado com o "finalPalavra -chave e exibir a mensagem declarada.
- Depois disso, crie uma classe infantil chamada “criança”Heritando a classe pai com a ajuda do“estende -sePalavra -chave.
- Nesta classe, declare a função “fora()”Idêntico à função de classe herdada exibindo a mensagem fornecida.
- Em Main, crie um objeto do “criança”Class e invocam a função idêntica declarada.
Saída
A limitação de face na saída acima significa que a função idêntica não pode ser substituída.
Exemplo 3: Utilização da palavra -chave "final" com classe
Neste exemplo em particular, uma classe pode ser alocada como “final”E então pode ser verificado herdando -o por sua classe infantil:
finalclassparent
public Final Void Out1 ()
Sistema.fora.println ("Esta é a classe pai");
ClassChildExtendsParent
public void out2 ()
Sistema.fora.println ("Esta é uma classe infantil");
criança obj = novo filho ();
obj.out1 ();
Aplique as etapas abaixo da declaração, conforme fornecido nas linhas de código acima:
- Em primeiro lugar, defina uma classe chamada “pai" associado com o "finalPalavra -chave para se abster de ser herdado.
- Dentro da classe, defina a função fornecida e exiba a mensagem fornecida.
- Depois disso, inicialize a classe infantil “criança”Heritando a classe dos pais através da“estende -sePalavra -chave.
- Nesta classe, também declarar uma função chamada “out2 ()”E imprima a mensagem declarada em sua definição (função).
- Por fim, em Main, crie um objeto da classe infantil e invoca a função da classe pai “out1 ()”.
- Isso registrará um erro, pois a classe alocada como final não pode ser herdada.
Saída
Nesta saída, pode -se observar que uma exceção é lançada, pois a função da classe pai não pode ser invocada pela classe infantil.
Conclusão
O "final”A palavra -chave em Java é utilizada para abster o usuário de substituir um valor. Essa palavra -chave pode ser associada a uma variável, função ou classe, etc. Ao modificar ou herdar (no caso de classe) seu valor, ele registra um erro. Este artigo discutiu o uso da palavra -chave final em Java.