Lar Desenvolvimento O que é um bloco de captura? - o que é techopedia

O que é um bloco de captura? - o que é techopedia

Índice:

Anonim

Definição - O que significa Catch Block?

Um bloco catch, em C #, é um bloco opcional de código que é executado quando uma exceção é gerada.


O bloco catch é uma parte específica da construção de manipulação excepcional e é implementada usando a palavra-chave "catch" em combinação com as palavras-chave "try" e "finalmente" e forma os meios para implementar o tratamento de exceção estruturado. Um bloco try inclui o código protegido que pode causar a exceção. Inclui declarações que lidam com circunstâncias excepcionais e trabalha para se recuperar de tais condições inesperadas.


O bloco Catch forma os meios para lidar com exceções. Se isso não for tratado, isso pode levar ao encerramento de todo o programa pelo tempo de execução do .NET. Um bloco de captura pode ser usado para lidar com qualquer exceção específica.

Techopedia explica Catch Block

O modelo de tratamento de exceções do Common Language Runtime (CLR) permite mais de um bloco de captura, cada um dos quais foi projetado para manipular uma exceção específica. Sempre que ocorre uma exceção, o CLR procura o bloco catch que manipula a exceção. Se o método atualmente em execução não contiver esse bloco, o CLR o procurará no método que chamou o método atual na pilha de chamadas. Se nenhuma cláusula correspondente for encontrada para essa exceção no código inteiro, a execução do encadeamento será interrompida e uma mensagem de exceção não tratada será exibida para o usuário.


A seguir, algumas dicas relacionadas ao uso de um bloco de captura:

  • O tipo de exceção deve ser especificado no bloco de captura somente após a razão por trás da ocorrência de exceções imprevisíveis específicas (como falha catastrófica do sistema, uso indevido da API etc.) e a recuperação foi implementada sem deixar o aplicativo de maneira inconsistente ou inconsistente. Estado inválido.
  • O bloco de captura deve ser posicionado de forma que as exceções mais específicas tenham que ser capturadas antes das menos específicas.
  • O bloco catch sem parâmetros é chamado de "exceções alimentares" porque isso pode suprimir problemas graves e difíceis de depurar.
  • O bloco de captura pode ser centralizado para lidar com a exceção de um local central.
  • A instrução "throw" pode ser usada no bloco catch, para o qual o mesmo objeto de exceção passado no throw pode ser passado novamente durante o retrocesso.
  • Variáveis ​​declaradas em um bloco try não podem ser usadas fora dele.
  • O código não retornará ao bloco try após a execução do bloco catch.
  • Testar o código do manipulador de exceção no bloco catch é essencial para evitar a quebra do aplicativo.
  • O bloco de captura não deve ser usado para código de limpeza.
  • O bloco catch sem parâmetros não pode ser usado para manipular exceções não compatíveis com o Common Language System (aquelas não derivadas de System.Exception).
Esta definição foi escrita no contexto de C #
O que é um bloco de captura? - o que é techopedia