Junior
O que é o operador throw em C#?
sobes.tech IA
Resposta da IA
O operador throw é utilizado para lançar explicitamente uma exceção. Permite interromper a execução normal do programa e transferir o controlo para o bloco de tratamento de exceções.
// Exemplo de uso do operador throw
try
{
int[] numbers = { 1, 2, 3 };
int index = 5;
// Lançar manualmente uma exceção IndexOutOfRangeException
if (index >= numbers.Length)
{
throw new IndexOutOfRangeException("O índice está fora do intervalo do array.");
}
Console.WriteLine(numbers[index]);
}
catch (IndexOutOfRangeException ex)
{
// Tratamento da exceção
Console.WriteLine($"Erro: {ex.Message}");
}
O operador throw pode ser usado de duas formas:
-
throw expression;: Lança uma nova exceção, ondeexpressioné uma instância de uma classe que herda deSystem.Exception.throw new ArgumentException("Argumento inválido."); -
throw;: Re-aciona a exceção atual no blococatch. Isto mantém toda a informação da pilha de chamadas da exceção original.try { // Código que pode lançar uma exceção } catch (FileNotFoundException ex) { // Tratamento adicional ou registo Console.WriteLine($"Ficheiro não encontrado: {ex.FileName}"); // Re-lançar a exceção para tratamento posterior na pilha throw; }
O uso de throw é importante para:
- Indicar erros ou situações inesperadas na aplicação.
- Criar exceções personalizadas para erros específicos.
- Transmitir informações do erro ao código que chama para um tratamento adequado.