Sobes.tech
Junior

O que é uma construção try-catch em C#?

sobes.tech IA

Resposta da IA

A construção try-catch em C# é usada para lidar com exceções. O bloco try contém o código que potencialmente pode gerar uma exceção. Se uma exceção ocorrer, a execução passa para o bloco catch, onde a exceção pode ser capturada e tratada.

try
{
    // Código que pode gerar uma exceção
    int result = 10 / int.Parse("0"); // Vai gerar DivideByZeroException
}
catch (DivideByZeroException ex)
{
    // Tratamento da exceção específica DivideByZeroException
    Console.WriteLine("Erro de divisão por zero: " + ex.Message);
}
catch (FormatException ex)
{
    // Tratamento da exceção específica FormatException
    Console.WriteLine("Erro de formato: " + ex.Message);
}
catch (Exception ex)
{
    // Tratamento de qualquer outra exceção
    Console.WriteLine("Ocorreu um erro geral: " + ex.Message);
}
finally
{
    // Este bloco é sempre executado, independentemente de uma exceção ocorrer ou não.
    // Usado para liberar recursos.
    Console.WriteLine("Bloco finally executado.");
}
  • Bloco try: Contém o código onde uma exceção pode ocorrer.
  • Bloco catch: Captura a exceção. Pode-se ter vários blocos catch para diferentes tipos de exceções. O bloco catch (Exception ex) captura todos os tipos de exceções.
  • Bloco finally: Um bloco opcional que sempre é executado, independentemente de uma exceção ter sido lançada ou capturada. Frequentemente usado para liberar recursos, como descritores de arquivos ou conexões de rede.

O uso de try-catch permite lidar graciosamente com erros inesperados, evitando que o programa trave e fornecendo ao usuário uma mensagem de erro mais informativa.