Sobes.tech
Junior — Middle

Em que casos é aconselhável usar o bloco finally em Java para gerenciar recursos ou encerrar operações?

sobes.tech IA

Resposta da IA

O bloco finally em Java é usado para garantir a execução de um código que deve ser executado independentemente de uma exceção ter ocorrido ou não. Isso é especialmente importante ao trabalhar com recursos que requerem liberação, como arquivos, conexões de rede, fluxos.

Recomenda-se usar finally quando for necessário:

  • Fechar recursos abertos (InputStream, OutputStream, Connection, etc.)
  • Realizar limpeza ou redefinição de estado
  • Concluir transações ou operações que devem ser finalizadas em qualquer caso

Exemplo:

FileInputStream fis = null;
try {
    fis = new FileInputStream("file.txt");
    // trabalho com o arquivo
} catch (IOException e) {
    e.printStackTrace();
} finally {
    if (fis != null) {
        try {
            fis.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Em versões modernas do Java, recomenda-se usar try-with-resources, que fecha automaticamente os recursos, mas finally ainda é relevante para outras operações de encerramento.