Antes de avançar, recomendamos que leia primeiro a variável estática e a variável final. Neste artigo, vamos discutir como podemos usar a palavra-chave final com uma variável estática. Neste artigo, veremos como inicializar uma variável final estática em java. Uma variável pode ser estática e final em java.
Aqui está o conteúdo da tabela do artigo que iremos cobrir este tópico.
1. Qual é a variável final estática em java?
2. Como declarar uma variável final estática?
3. Inicialização da variável final estática?
i) inicialização durante a declaração?
ii) inicialização dentro do bloco estático?
4. Qual é a variável final estática em branco em java?
5. Regras para inicializar a variável final estática em branco?
6. Exemplo da vida Real?
Qual é a variável final estática em java?
a maioria de nós já sabe que uma variável estática é declarada ao nível da classe. Significa que uma variável estática é compartilhada com todos os objetos da classe. Se fizermos qualquer alteração numa variável estática que também reflicta os outros objectos. Uma variável estática é sempre uma variável de instância da classe. Você não pode declarar uma variável estática dentro do método, bloco ou construtor. Então, se não inicializarmos uma variável estática, então o JVM inicializá-la-á e provê o valor padrão.
mas se estamos declarando uma variável estática com a palavra-chave final, então JVM não irá fornecer o valor padrão. Precisamos inicializar uma variável final estática porque a JVM não irá fornecer um valor padrão para ela. Uma variável final estática é uma constante de tempo de compilação porque carrega na memória quando uma classe carrega para a memória.
como declarar uma variável final estática?
para declarar uma variável final estática, precisamos cuidar de duas coisas, uma declara com a palavra-chave final e outra é a inicialização da variável. Não é obrigatório inicializar uma variável final estática no momento da declaração. Podemos inicializá-lo em um bloco estático também. Se você não está inicializando no momento da declaração, é chamado de uma variável final estática em branco.
static final dataType variableName = value;
Aqui, estática é uma palavra-chave que indica o JVM, a variável será reduzida para todos os objetos.
final é uma palavra-chave que indica o JVM para tratar esta variável como a variável final.
dataType é um tipo de variável que você deseja criar.
varaibleName é o nome da variável que você deseja criar.
Saída: Exceção em tempo de compilação
Inicialização da variável static final
Em Java, a JVM especialmente cuida da inicialização da variável static final. Temos de inicializar a variável final estática com um valor, caso contrário, o compilador irá lançar erro de tempo de compilação. Mas como vimos no exemplo acima uma variável final estática só pode ser inicializada uma vez.
i) inicialização durante a declaração
podemos inicializar uma variável final estática durante a declaração da variável. Como você sabe, as variáveis estáticas são lidas antes do Carregamento da classe. Então deve inicializá-los a conclusão de carregamento de classe.
Saída: Valor da variável final estática = 5
ii) inicialização dentro de um bloco estático
pode inicializar uma variável final em bloco estático, mas também deve ser estático. Mas as variáveis finais estáticas não podem ser atribuídas ao valor no construtor. Então, eles devem receber um valor com sua declaração.
Saída: Valor da variável final estática = 5
Qual é a variável final estática em java?
como já sabe, uma variável final estática só pode ser inicializada uma vez. Você não pode inicializar uma variável final estática mais de uma vez. A variável final estática em branco é uma variável final que não é inicializada durante a declaração. Pode ser inicializado apenas em bloco estático.
uma variável final em branco só pode ser inicializada no bloco estático. Java não fornece nenhuma outra maneira de inicializar uma variável final estática em branco.
regras para inicializar a variável final estática em branco
1. Se você não estiver inicializando uma variável final estática durante a declaração(variável final estática em branco), então ela deve ser inicializada em um bloco estático caso contrário o compilador lança uma exceção no tempo de compilação.2. Uma variável estática final em branco não pode ser inicializada no construtor. Deve ser inicializado em bloco estático.
exemplo da vida real
suponha que queremos manter os dados das pessoas. Cada pessoa tem um nome, endereço, nome do país, etc. Mas queremos fornecer um nome de país comum(estático) e constante(final) a todas as pessoas. Aqui estamos criando uma variável final estática e seremos inicializados em bloco estático. Neste exemplo, vamos criar um conterrâneo variável final estático para que ele permaneça o mesmo durante a execução do programa.
Output: Name of Person: Ram
Address of person: India
Country of person: India
Name of Person: John
Address of person : USA
Country of person: India