子程序调用子程序的异常处理

时间:2015-01-22 09:17:51

标签: c# exception-handling

我有一个方法,它有一个子程序,它再次调用子程序。最后一个子程序可以抛出异常。谁负责捕获异常?或谁能够捕获异常?

在方法捕获它们之前,调用堆栈中是否会传递异常?或者只是负责捕获子程序异常的调用方法?

1 个答案:

答案 0 :(得分:1)

全部3

每个程序都应该处理自己的错误,然后如果有任何依赖于另一个程序,他们应该确保它们不会因为该依赖项中发生错误而崩溃。

可以说,最重要的是程序处理自己的错误,因为它也可以在其他程序中使用。


你的主要方法不应该担心使最终程序崩溃的原因(“子子方法”),它只需要知道sub方法崩溃的原因。如果由于某种原因 重要,那么最终程序崩溃的原因可能与你传入的不同参数有关。最终的程序会因为 X 而崩溃,中间程序应该注意这一点,发现是因为第一个程序中的参数 Y 而只报告回到第一个程序程序(根据需要)。

您需要避免在最终程序和第一个程序之间创建依赖关系,因为这会在最终程序更新时导致维护的噩梦。