As aplicações devem ser capazes de lidar com erros que ocorram durante a execução de forma consistente. .NET fornece um modelo para notificar as aplicações de erros de forma uniforme: .AS operações NET indicam falha ao lançar exceções.
Exceções
Uma exceção é qualquer condição de erro ou comportamento inesperado que seja encontrado por um programa de execução. As exceções podem ser lançadas devido a uma falha no seu código ou em código a que chama (como uma biblioteca partilhada), recursos indisponíveis do sistema operativo, condições inesperadas que o tempo de execução encontra (como código que não pode ser verificado) e assim por diante. A sua aplicação pode recuperar de algumas destas condições, mas não de outras. Embora possa recuperar da maioria das exceções à aplicação, não pode recuperar da maioria das exceções de tempo de execução.
Em .NET, uma exceção é um objeto que herda da System.Exception classe. Uma exceção é lançada a partir de uma área de código onde ocorreu um problema. A exceção é passada para cima da pilha até que a aplicação a manuseie ou o programa termine.
Exceções vs. métodos tradicionais de tratamento de erros
Tradicionalmente, o modelo de tratamento de erros de uma língua baseava-se na forma única da língua de detetar erros e localizar os manipuladores para eles, ou no mecanismo de tratamento de erros fornecido pelo sistema operativo. A forma como o tratamento de exceções .NET implementa o tratamento de exceções proporciona as seguintes vantagens:
O lançamento e manuseamento de exceções funcionam da mesma forma para as linguagens de programação .NET.
Não requer nenhuma sintaxe linguística específica para lidar com exceções, mas permite que cada idioma defina a sua própria sintaxe.
As exceções podem ser lançadas através do processo e até mesmo dos limites da máquina.
O código de tratamento de exceções pode ser adicionado a uma aplicação para aumentar a fiabilidade do programa.
As exceções oferecem vantagens em relação a outros métodos de notificação de erro, tais como códigos de devolução. As falhas não passam despercebidas porque se uma exceção for lançada e não lidares com isso, o tempo de funcionamento termina a tua candidatura. Os valores inválidos não continuam a propagar-se através do sistema como resultado de um código que não verifica um código de devolução de falhas.
Exceções comuns
A tabela que se segue enumera algumas exceções comuns com exemplos do que as pode causar.
Este módulo explora o uso de exceções e o processo de tratamento de exceções em aplicativos de console C#. As atividades práticas fornecem experiência na implementação de padrões de tratamento de exceções para vários cenários de codificação.