关于try catch语句的问题catch{throw;}这里的catch是捕获所有异常吧?“在 catch 块中可以使用 throw 语句再次引发已由 catch 语句捕获的异常”这句话是什么意思?为什么要再次引发呢?有什么用?

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/29 19:21:07

关于try catch语句的问题
catch
{
throw;
}
这里的catch是捕获所有异常吧?
“在 catch 块中可以使用 throw 语句再次引发已由 catch 语句捕获的异常”这句话是什么意思?为什么要再次引发呢?有什么用?

是的,是捕获所有异常.如果代码只是你写的这样,catch块里面没有其他语句,那么毫无意义,删掉你的try..catch以后程序的行为不会有任何变化.
一般来说不建议捕获所有异常,但具体情况具体分析.这样的用法可以是
catch
{
//此处做一些事情,比如记录一个错误日志.
throw;//throw的意思是将捕获的异常重新抛出,以便调用栈上其他的catch块捕获.如果没有任何代码捕获这个异常,程序将会终止,因为它不知道该如何处理这个错误,最安全的方式就是终止.
}
例如,你有类A,有一个方法Foo,显然他/她会抛出异常.
public int Foo()
{
return int.Parse("t");
}
其他方法调用了这个方法
public void Bar()
{
try
{
int i=Foo();
}
catch
{
//做一些事情
throw;
}
}
最后主函数这样写:
A a = new A();
try
{
a.Bar();
}
catch

//这里又捕获了Bar函数重新抛出的异常,做一些另外的事情

本人回答问题都是原创,绝不上网胡乱复制粘贴.有问题可以hi我

java的try catch语句问题try{语句1;语句2;语句3;}catch{语句4;}如果语句1有错则跳到语句4执行,那么处理完语句4后,语句2、3还能否被执行? .try及catch语句的作用是什么 关于try catch语句的问题catch{throw;}这里的catch是捕获所有异常吧?“在 catch 块中可以使用 throw 语句再次引发已由 catch 语句捕获的异常”这句话是什么意思?为什么要再次引发呢?有什么用? c# try-catch 语句的含义和用法 关于c++ 中使用try throw catch语句例如,.int a;try{cin a;throw a;}catch (int){cout 29.下列关于java的try-catch-finally语句的描述中,错误的是_______.A.try语句后面的程序段将给出处理异常的语句 B.catch()方法跟在try语句后面,它可以是一个或多个C.catch()方法有一个参数,该参数是某 try catch的作用 使用try.catch和throw语句实现求解实系数一元二次方程的实数根 c#描述异常处理语句try、catch、finally执行时的相互关系 若catch中抛出运行时异常,请问在try catch语句块中return语句是写在try中还是写在try catch语句外. try……catch语句用来________、 __________. 一个try{}后最多可以有多少个catch()语句 对于每个函数都写,try catch语句块好吗 下列关于C#的异常处理的说法,错误的是 ( )选择二项)A.Try块必须跟catch块组合使用,不能单独使用B.一个try块可以跟随多个catch块C.使用throw语句既可引发系统异常,也可以引发由开发人员创建的 312. 在Java中,关于捕获异常的语法try-catch-finally的下列描述正确的是哪个项目?(选择2项)a. try-catch必须配对使用b. try可以单独使用c. try-finally可以配对使用 关于JAVA t中try-catch的用法?一个try-catch块 是不是只能 捕获一个错误呀?多重的try-catch(一个try中有N个catch)是能捕获多种错误还是捕获多个错误?具体说一下,书上都把我弄晕了 ,了还有嵌套的try-ca Java中,关于捕获错误的语法try-catch-finally的下列描述正确的是().(选择二项)A) try-catch必须配对使用B) try可以单独使用C) try-finally可以配对使用,finally也可以单独使用D) 在try-catch后如果定义 关于catch的词组