为什么我们可以使用父异常处理时使用多重捕获

时间:2019-12-15 07:46:45

标签: performance exception .net-core try-catch

异常处理提供了顺畅的应用程序流程,但是当我们谈到技术部分时,很难理解为什么应该使用多个catch块。当我们可以使用一个catch块通过通用父异常处理异常时,为什么我们需要多个抓住

1 个答案:

答案 0 :(得分:0)

当您想以不同的方式处理不同的异常时,多重捕获块很有用。

try
{
    int num1 = int.Parse(Console.ReadLine());
    int num2 = int.Parse(Console.ReadLine());

    int result = num1 / num2;
}
catch (DivideByZeroException ex)
{
      Console.Write("Cannot divide by zero");
}
catch (InvalidOperationException ex)
{
       Console.Write("Not a valid number");
}
catch (FormatException ex)
{
      Console.Write("Not a valid number");
}

使用多个捕获块时

  • 要打印特定于异常的消息
  • 执行一些特定于异常的逻辑