黑马程序员技术交流社区
标题:
try、catch、finally 、throw、 throws分别在什么情况下使用,怎么用
[打印本页]
作者:
我爱的是你爱我_
时间:
2014-3-18 17:02
标题:
try、catch、finally 、throw、 throws分别在什么情况下使用,怎么用
try、catch、finally 、throw、 throws分别在什么情况下使用,怎么用。?应该注意哪些?
作者:
董振冬
时间:
2014-3-18 17:31
程序的流程是:运行到try块中,如果有异常抛出,则转到catch块,catch块执行完毕后,执行finally块的代码,再执行finally块后面的代码。如果没有异常抛出,执行完try块,也要去执行finally块的代码。 然后执行finally块后面的语句 throw 是语句抛出一个异常;throws 是方法抛出一个异常;throws 可以单独使用,但 throw 不能; throw要么和try-catch-finally语句配套使用,要么与throws配套使用。但throws可以单独使用,然后再由处理异常的方法捕获。
作者:
赵军军
时间:
2014-3-18 18:42
throws是获取异常
throw是抛出异常
try是将会发生异常的语句括起来,从而进行异常的处理,catch是如果有异常就会执行他里面的语句,而finally不论是否有异常都会进行执行的语句。
作者:
sgs_gzy
时间:
2014-3-18 19:17
try{}用来定义需要被检测的代码,catch(){}用来处理异常的代码,
finally{}中是一定会执行的代码
注意:
1,finally中定义的通常是 关闭资源代码。因为资源必须释放。
2,finally只有一种情况不会执行。当执行到System.exit(0);finally不会执行。
throw定义在函数内,用于抛出异常对象。
throws定义在函数上,用于抛出异常类,可以抛出多个用逗号隔开
当函数内容有throw抛出异常对象,并未进行try处理。必须要在函数上声明,否则编译失败。
注意:RuntimeException除外。也就说,函数内如果抛出的RuntimeException异常,函数上可以不用声明。
这些毕老师视频都有讲到啊,day10里面有很详细解释!
作者:
SyouRai_Tsk
时间:
2014-3-18 22:45
http://blog.csdn.net/ronawilliam/article/details/3299676
可以参考此帖
作者:
枫露
时间:
2014-3-18 23:39
本帖最后由 枫露 于 2014-3-18 23:40 编辑
异常处理机制
try {
这里写可能出错的代码
} catch (Exception e) {
这里写可能出现的错误异常的处理
}finally{
这里写一定会执行的代码,有些资源需要关闭的时候
}
throw和throws写在main方法的大括号的前边,当有一个异常的时候使用throw,有多个异常使用throws
一般情况下,对需要处理的异常使用try catch finally ;
作者:
透过生活
时间:
2014-3-19 13:13
try{
可能出现异常的代码,用于捕捉异常
}catch()Exception e{
处理出现的异常
}finally{
不管上边的执行不执行,这里存放一定执行的代码,(通常放关闭资源的代码,除以上代码出现System.exit(0)系统退出,finally里代码不执行)
throws 声明可能出现的异常,用在方法上。
throw 不处理异常,想上抛出异常,用在内部
}
作者:
a569609054
时间:
2014-3-19 13:28
throw定义在函数内,用于抛出异常对象。
throws定义在函数上,用于抛出异常类,可以抛出多个用逗号隔开。
异常处理语句:
try
{
需要被检测的代码
}
catch ()
{
处理异常的代码
}
finally
{
一定会执行的代码
}
异常的注意事项:
在子父类覆盖时:
1,子类抛出的异常必须是父类的异常的子类或者子集、
2,如果父类或者接口没有异常抛出时,子类覆盖出现异常,只能try处理不能抛出。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2