在 C# 中捕获多个异常
Muhammad Maisam Abbas
2023年1月30日
2021年4月29日
本教程将讨论在 C# 中捕获多个异常的方法。
使用 C# 中的 Exception
类捕获多个异常
Exception
类用于表示 C# 中的一般异常。我们可以在 try...catch
子句中使用 Exception
类来捕获代码抛出的任何类型的异常。请参见以下示例代码。
using System;
namespace convert_int_to_bool
{
class Program
{
static void Main(string[] args)
{
try{
int i = 1;
bool b = Convert.ToBoolean(i);
Console.WriteLine(b);
}
catch(Exception e){
Console.WriteLine("An Exception Occured");
}
}
}
}
输出:
True
在上面的代码中,我们使用 C# 中的 Exception
类来捕获代码抛出的任何类型的异常。通常不建议使用此方法,因为它不能为我们提供足够的有关问题以及如何解决问题的信息。我们应该始终偏向于特定的异常类型,而不是这种通用的异常类型。
使用 C# 中的 if
语句捕获多个异常
使用特定的异常要求我们以 catch
子句的形式编写大量代码。在 C# 中,我们可以使用 if
语句只用一个 catch
子句来捕获多种类型的异常。请参见以下示例代码。
using System;
namespace convert_int_to_bool
{
class Program
{
static void Main(string[] args)
{
try{
int i = 1;
bool b = Convert.ToBoolean(i);
Console.WriteLine(b);
}
catch(Exception e){
if (ex is FormatException || ex is OverflowException){
Console.WriteLine("Format or Overflow Exception occured");
}
}
}
}
}
输出:
True
在上面的代码中,我们使用 C# 中的 if
语句通过一个 catch
子句来捕获 FormatException
和 OverflowException
异常。
Author: Muhammad Maisam Abbas
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn