try catch finally
try catch 块中
一个try块中,如果上面有一句话报错,那么下面的所有的代码都不会执行,会直接走到catch块中,所以如果有依赖关系的代码应该写在一个try块中,如果没有依赖关系,应该分开写,不影响到下一层。
catch块中可以捕获一种异常,也可以捕获多种异常,主要取决于是否要精确定位问题。
finally块中代码无论try中的代码是否异常,是否有return,都会执行finally中的代码,用finally代码关闭流之类的的东西,是比较好的。
如果方法体本身定义throws 那么在方法内的任意代码,抛出异常都会中断方法的运行,转而到调用的地方去处理异常,这种好用,但是也不好用,不应该无限制使用。