O que são blocos estáticos em java

O que são blocos estáticos em java
Embora a programação em Java, pode haver um requisito para escrever um conjunto de códigos que o programador precisa executar durante a classe Carregando na memória. Por exemplo, solicitando o usuário com alguma mensagem antes das funcionalidades aplicadas no principal ou priorizar uma funcionalidade vital, separando -a. Nesses casos, os blocos estáticos em Java são auxiliários em simplificar e gerenciar as funcionalidades no final do desenvolvedor.

Este blog ilustrará o uso de blocos estáticos em Java.

O que são "blocos estáticos" em Java?

Um bloco é alocado como “estático”Ao associar a palavra -chave estática a ela. Esses blocos têm maior precedência do que “principal“De modo que eles sejam executados antes do“principal()”Método.

Sintaxe

ClassMain
estático
Sistema.fora.println ("Hello World");

Na sintaxe acima, o bloco incluído é atribuído como “estático”E será invocado antes do principal.

Considerações importantes sobre "blocos estáticos"

  • Blocos estáticos em Java são invocados automaticamente quando a classe é carregada na memória.
  • Estes são executados apenas uma vez, mesmo que vários objetos de classe sejam criados.
  • Não há limitação/restrição no número de blocos de inicialização estática em uma classe.
  • Esses blocos podem ser utilizados para inicializar as variáveis ​​estáticas também.

Exemplo 1: Utilização de "blocos estáticos" em Java

Neste exemplo, o bloco estático pode ser usado para observar a sequência na qual pode ser executada em relação ao principal:

Exemplo de Classe Public
estático
Sistema.fora.println ("Este é um bloco estático!");

publicstaticVoidMain (String [] args)
Sistema.fora.println ("Isso é principal!");

No bloco de código acima, basta incluir um “estático”Block acumulando a mensagem declarada e, na próxima etapa, exiba a mensagem fornecida em“principal”.

Saída

Nesta saída, pode -se analisar que o bloco estático é invocado antes do principal.

Exemplo 2: Executando o valor estático em "Bloco estático" em Java

Nesta ilustração específica, um valor estático pode ser inicializado no bloco estático e posteriormente exibido no principal:

ClassCustom
staticint i;
estático
i = 10;
Sistema.fora.println ("Bloco estático chamado! ");

Exemplo de Classe Public
publicstaticVoidMain (String [] args)
Sistema.fora.println (personalizado.eu);

Nas linhas acima do código:

  • Primeiro de tudo, crie uma classe chamada “personalizado”.
  • Dentro da classe, especifique um “estático”Variável e inicialize no alocado“estático" bloquear.
  • Por fim, invocar a variável inicializada em principal, referindo -se à classe em que está contida.

Saída

No resultado acima, pode -se ver que, da mesma forma, o “estático”O bloco é executado primeiro, e o valor inicial neste bloco também é exibido, respectivamente.

Exemplo 3: Execução do “Bloco estático” antes do construtor

Neste exemplo, o bloco estático pode ser especificado antes do construtor, e sua precedência e execução podem ser observadas de acordo:

ClassCustom
estático
Sistema.fora.println ("Este é um bloco estático");

personalizado()
Sistema.fora.println ("Este é um construtor");

Exemplo de Classe Public
publicstaticVoidMain (String [] args)
obj1 personalizado = new Custom ();
obj2 personalizado = new Custom ();

Nas linhas acima do código:

  • Da mesma forma, defina uma classe chamada “personalizado”.
  • Agora, especifique o “estático”Bloco e inclua o construtor de classe, eu.e., ““personalizado()”Tendo as mensagens declaradas, respectivamente.
  • Em geral, crie dois objetos da classe criada para invocar as funcionalidades da classe na ordem de precedência.

Saída

Nesta saída, as seguintes considerações podem ser realizadas:

  • O bloco estático recebe maior precedência em comparação com o construtor contido.
  • Dois objetos da classe são criados, mas o bloco estático é executado uma vez, como discutido antes.

Conclusão

O "Blocos estáticos”Em Java executar apenas uma vez quando uma classe é carregada na memória e é executada antes do“principal()”Método. Os exemplos discutidos no artigo provam que esses blocos têm maior precedência que o construtor principal e de classe, respectivamente, e são invocados apenas uma vez, independentemente do número de objetos criados. Este blog discutiu o uso de blocos estáticos em Java.