Como usar Java final em classes, métodos e variáveis
A palavra-chave final em Java é usada para criar elementos que não podem ser alterados posteriormente. Esse modificador pode ser usado em classes, métodos e variáveis, principalmente para evitar erros e utilizações inadequadas de códigos.
O que é Java final?
A maioria das linguagens de programação oferecem a possibilidade de alterar e ampliar códigos que já existem. Isso também é possível em Java, mas, em alguns casos, pode ser importante que um elemento seja criado para ser inalterável. O modificador que permite criar esse tipo de elementos em Java é o final. Ele pode ser usado para restringir o acesso a uma classe, um método ou uma variável. Com ele, o valor de uma variável final não poderá mais ser alterado, não será possível ampliar uma classe final e um método final não poderá mais ser implementado. Isso ajuda a evitar que o código seja utilizado de formas indesejadas.
Rápido e escalável, confie na hospedagem da IONOS, que inclui domínio grátis no primeiro ano e endereço de e-mail!
- Domínio
- SSL Wildcard
- Suporte 24 horas
Classes finais
Use o Java final para uma classe sempre que você quiser impedir que a classe seja ampliada. Isso é feito com frequência, pois, em muitos casos, pode ser importante evitar a derivação de uma subclasse. Isso é válido principalmente para tipos de dados básicos, como java.lang.Math
ou java.lang.String
, que sempre são declarados como final. Mesmo se você tiver outros motivos para evitar que subclasses sejam derivadas de uma classe, o Java final é a melhor forma de fazer isso. O exemplo abaixo esclarece como criar uma classe final e uma segunda classe que tenta ampliá-la. Em seguida, há uma classe main
com o método main
.
Ao tentar executar o código, receberemos a seguinte mensagem:
Métodos finais
Se um método for identificado como final, ele não poderá ser substituído. Isso evita principalmente que um método possa receber outro significado em uma classe subordinada. Para evitar isso, crie um método final com o modificador Java final. No exemplo abaixo, isso é feito ao criar uma classe chamada “Imperador” que contém um método chamado “meuTitulo”. A classe seguinte, chamada “Rei” amplia a classe “Imperador” e tenta substituir o método “meuTitulo”. Para o método main
, vamos usar “Principe” como outra forma de tentar acessar o método. No código, o exemplo fica assim:
Ao tentar usar o código, a seguinte mensagem de erro é emitida:
Variáveis finais
O Java final também é usado para criar variáveis cujo valor não pode ser alterado posteriormente. Isso é importante principalmente quando determinadas variáveis devem permanecer sempre constantes em um código. No exemplo a seguir, é criada uma variável x que contém o valor 5. A seguir, tentamos chamar essa variável e atribuir um novo valor a ela. Veja abaixo como fica o código:
Se usarmos o comando Java System.out.println
para ver o resultado, a seguinte mensagem de erro é emitida:
Variáveis finais vazias
A princípio, todas as variáveis devem ser inicializadas em Java. Mas, se você declarar uma variável final vazia, poderá inicializar a variável com um construtor de classe. No código, isso pode ser feito da seguinte forma:
Ao ser executado, esse código retorna a seguinte frase: