C# 中的异常传播
csharpprogrammingserver side programming
可以通过 C# 中异常处理的工作方式来理解异常传播。
在 try 中,当发生异常时,将检查相应的 catch 块。这样做是为了查看它们是否可以捕获异常。如果没有找到匹配的异常,则将异常传播到更高级别的 try 块。重复此过程,直到捕获到异常。如果没有捕获到异常,则程序的执行结束。
以下示例展示了嵌套的 try 语句,解释了上述概念。
示例
using System; using System.Text; public class Demo { public static void Main() { try { try { throw new ArgumentException(); }catch (NullReferenceException e) { Console.WriteLine("catch one"); } finally { Console.WriteLine("finally one"); } } catch (Exception e) { Console.WriteLine("catch two"); } finally { Console.WriteLine("finally two"); } Console.ReadLine(); } }
输出
finally one catch two finally two