trycatch的作用,trycatch语句的作用
c++ try catch 有什么用
try catch是用来检测并且处理代码错误的 - Exception
try{
你想要运行的代码写在这里
}catch(想要捕捉的错误类型){
万一有这个错误发生的时候需要运行的代码写在这里
}
trycatch是什么意思?它用来干什么
try/catch的功能是捕捉异常
所以在需要这个功能的时候就需要try/catch
1)java中即使不会发生异常的代码也是可以用try/catch,catch句不会被认为不可达代码
2)常见需要捕捉的异常
a.IO异常:使用输入输出流读写文件的时候,
b.类型转换异常:不确定被转换变量是否满足条件的时候,如下
String str = \"a\";
Integer.parseInt(str);
c.DB异常:数据库操作时常伴随有异常的发生
何为异常? Try…catch机制的作用
异常就是可以使应用程序意外终止的状况
异常还分为自定义异常和Exception类中定义好的异常
try ...catch可以抓异常并处理异常、抛出异常(调用时再做处理)
程序不意外终止,能够使程序正常执行完毕,提高代码的健壮性。
一段健壮的代码肯定多出使用try....catch处理,例如计算机让用户输入两个数并且输入运算符,用户输入10/0,就会初相异常。如果让用户看到异常,用户不明白,只知道出错了,烂系统。
try catch finally作用
1、将预见可能引发异常的代码包含在try语句块中。
2、如果发生了异常,则转入catch的执行。catch有几种写法:
catch
这将捕获任何发生的异常。
catch(Exception e)
这将捕获任何发生的异常。另外,还提供e参数,你可以在处理异常时使用e参数来获得有关异常的信息。
catch(Exception的派生类 e)
这将捕获派生类定义的异常,例如,我想捕获一个无效操作的异常,可以如下写:
catch(InvalidOperationException e)
{
....
}
这样,如果try语句块中抛出的异常是InvalidOperationException,将转入该处执行,其他异常不处理。
catch可以有多个,也可以没有,每个catch可以处理一个特定的异常。.net按照你catch的顺序查找异常处理块,如果找到,则进行处理,如果找不到,则向上一层次抛出。如果没有上一层次,则向用户抛出,此时,如果你在调试,程序将中断运行,如果是部署的程序,将会中止。
如果没有catch块,异常总是向上层(如果有)抛出,或者中断程序运行。
3、finally
finally可以没有,也可以只有一个。无论有没有发生异常,它总会在这个异常处理结构的最后运行。即使你在try块内用return返回了,在返回前,finally总是要执行,这以便让你有机会能够在异常处理最后做一些清理工作。如关闭数据库连接等等。
注意:如果没有catch语句块,那么finally块就是必须的。
如果你不希望在这里处理异常,而当异常发生时提交到上层处理,但在这个地方无论发生异常,都要必须要执行一些操作,就可以使用
Java中的try catch的作用
try就像一个网,把try{}里面的代码所抛出的异常都网住,然后把异常交给catch{}里面的代码去处理,最后执行finally之中的代码。
无论try中代码有没有异常,也无论catch是否将异常捕获到,finally中的代码都一定会被执行。
例如:当除数为0时,编译不会报错,如果没有try/catch的话,程序直接崩溃。用try/catch的话,则可以让程序运行下去,并且输出为什么出错。
扩展资料
java中try....catch的使用原则
1、当代码中可能会遇到的异常需要用try{ }catch{Exception e}来处理,否则导致程序崩溃。
2、不要在for循环里面嵌套try catch子句。
3、尽可能的减少try catch子句的嵌套,会影响性能。
4、同一个try子句中多个catch时,异常处理原则。
当一个try块中包含众多语句,可能抛出多种不同的异常,只有通过多个catch块来捕获不同的异常。而如果两个异常存在继承关系,应该把子类异常放在父类异常的前面来捕获,或者把最小范围异常放在最前面 ,范围大的放在后面。
因为是按照catch块从上往下匹配,当它匹配某一个catch块的时候,就直接进入到这个catch块里面去了,后面在再有catch块的话,它不做任何处理,直接跳过去,全部忽略掉。
如果有finally的话进入到finally里面继续执行。Exception这个异常的根类一定要刚在最后一个catch里面,如果放在前面或者中间,任何异常都会和Exception匹配的,就会报已捕获到异常的错误。