Negocio

Blocos estáticos em Java: exceção e exemplos

Começando

A inicialização faz parte da vida de todo programador. Como você sabe, isso é atribuir o primeiro valor a alguma variável em seu programa. Se você pensar a respeito, a inicialização também acontece no mundo real. Os exemplos incluem assinar o verso do seu cartão de crédito, inserir a senha de uma nova conta de mídia social ou colocar moedas na máquina para iniciar a lavagem manual do carro. É um fato da vida. Muitas coisas exigem algo para começar. A linguagem de programação Java não é diferente. As variáveis ​​precisam de valores iniciais, os métodos precisam de entrada e os loops às vezes precisam de contadores. Java consegue isso de duas maneiras. Um deles é com o bloco estático.

O que é um bloco em Java?

Um bloco em Java é uma coleção de zero ou mais instruções de código de programa, entre chaves {}, que executam uma tarefa específica. O objetivo de um bloco é permitir que várias instruções sejam executadas onde uma única instrução normalmente seria. Por exemplo, considere o seguinte:

if (condição) { 
 // início do bloco 1
  instrução1;
  declaração2;
// fim do bloco 1
} else {
  // início do bloco 2
  instrução1;
  declaração2;
// fim do bloco 2
}

Nesse caso, as cláusulas true e false de uma instrução ‘if’ são substituídas por um bloco. As instruções desta forma são bastante comuns em programas Java. Mais exemplos com os quais você pode estar familiarizado podem ser encontrados nos corpos de instrução de várias construções de loop, como ‘while’, ‘for’ e ‘do while’.

Blocos estáticos em Java

Um bloco estático é um tipo especial de bloco que tem a palavra-chave ‘estático’ precedendo-o. Por exemplo:

static { 
  instrução1;
  declaração2;
}

Isso declara um bloco estático com duas instruções nele. O objetivo de um bloco estático é realizar as inicializações estáticas para uma classe. Os blocos estáticos são executados apenas uma vez, quando a classe é instanciada pela primeira vez, e normalmente são usados ​​para definir os valores iniciais das variáveis ​​estáticas. Uma característica interessante dos blocos estáticos é que você pode ter mais de um deles. Nesse caso, eles são executados na ordem em que são escritos no código.

Exceções

Em termos simples, uma exceção é um erro, um evento de tempo de execução que faz com que um programa se desvie de suas etapas normais de execução. Por exemplo, dividir um valor por zero causará uma exceção. Quando esse tipo de evento ocorre, a execução é entregue ao sistema de tempo de execução para processamento. Java captura muitos tipos de exceções e cria um objeto de exceção que contém várias informações que podem ser usadas para processar a exceção posteriormente. Cabe ao programador antecipar e criar as respostas adequadas às exceções. Eles são conhecidos coletivamente como manipuladores.

Exceções em um bloco estático Java

Você pode ter uma exceção em um bloco estático Java, que normalmente trataria com uma construção ‘try-catch’. Nada de especial aqui; é assim que você trataria uma exceção em qualquer outro lugar do código. Porém, há uma restrição, você não pode ‘lançar’ uma exceção em um bloco estático. A linguagem Java não permite isso. A razão é simples, você não controla quando um bloco estático é executado porque ele é executado quando a classe é instanciada. O mecanismo de captura pode não ser configurado e inicializado. Então, jogar não faz sentido.

Resumo da lição

Para recapitular, um bloco em Java é uma coleção de zero ou mais instruções de código de programa, entre chaves {}, que permitem que várias instruções sejam executadas onde uma única instrução normalmente faria. Um bloco estático é um tipo especial de bloco que executa as inicializações estáticas para uma classe. Uma exceção é um evento de tempo de execução que faz com que um programa se desvie de suas etapas normais de execução. Você pode ter uma exceção em um bloco estático e tratá-la com um mecanismo ‘try catch’. Porém, você não pode ‘lançar’ um bloco estático.