C#在try中包含throw交给哪个catch处理

2024-12-27 14:56:48
推荐回答(2个)
回答1:

首先你throw的话肯定直接往上抛了,抛到调用它的父函数里,假如父函数有异常处理的话就会抓住你抛上来的异常,至于交给那个catch处理的话那要看你的定义,假如你抛的是自定义了异常类型A,而你又指定了
try{}
catch(A ex)
{}
catch(B ex)
{}
catch(Exception ex)
{}
这样会交给第一个catch处理,因为你指定了A异常的处理方式,假如都不是你定义的话就会采用最后一个处理,因为Exception是所有异常的基类

回答2:

直接用Experience来捕获全部异常就行了