Você e sua equipe estão atuando no desenvolvimento de um si...
Assinale a opção que melhor descreve a função do bloco “finally” neste comando.
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa Correta: A - Um bloco opcional que contém o código a ser executado sempre, independentemente de ocorrer ou não uma exceção.
A questão aborda um conceito importante da programação orientada a objetos, que é o tratamento de exceções usando o bloco try..catch..finally. Este conceito é fundamental para garantir que o programa lide elegantemente com situações inesperadas ou erros sem interromper a execução abruptamente. Para resolver a questão, é necessário compreender como cada parte deste bloco funciona e, em especial, o papel do bloco finally.
Justificativa da Alternativa Correta:
O bloco finally é utilizado para incluir código que deve ser executado independentemente de uma exceção ser lançada ou não. Isso significa que o código dentro deste bloco sempre será executado após a execução dos blocos try e catch, seja para liberar recursos alocados, fechar arquivos ou liberar conexões de banco de dados. Portanto, a alternativa A está correta ao descrever o finally como um bloco que sempre é executado.
Análise das Alternativas Incorretas:
B - Um bloco reservado apenas para manipulação de erros críticos. Esta opção está incorreta, pois a manipulação de erros críticos é geralmente feita no bloco catch, onde se define como tratar determinadas exceções. O finally não é específico para tratamentos de erros, mas sim para executar código independente do resultado do bloco try..catch.
C - Um bloco que só é executado se uma exceção for lançada. Esta descrição é falsa, pois o finally é executado em qualquer caso, seja na ocorrência de exceção ou não. Não é condicionado à presença de uma exceção.
D - Um bloco utilizado para interromper o fluxo do programa imediatamente ao encontrar uma exceção. Esta afirmação não corresponde ao uso do bloco finally. Interrupções no fluxo devido a exceções são normalmente tratadas no bloco catch. O finally é garantido para execução, independentemente de interrupções.
E - Um bloco exclusivo para imprimir mensagens de erro no console. Novamente, esta é uma função típica do bloco catch, onde mensagens de erro podem ser tratadas e exibidas ao usuário. O finally não se limita a esta função específica.
Espero ter esclarecido suas dúvidas sobre o uso do bloco finally no contexto de tratamento de exceções. Gostou do comentário? Deixe sua avaliação aqui embaixo!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
"O bloco finally, quando presente, é sempre executado. Em geral, ele inclui comandos que liberam recursos que eventualmente possam ter sido alocados durante o processamento do bloco try e que podem ser liberados, independentemente de a execução ter encerrado com sucesso ou ter sido interrompida por uma condição de exceção. A presença desse bloco é opcional."
Fonte: https://www.devmedia.com.br/blocos-try-catch/7339
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo