异常处理
try{ 需要检测的代码;}
catch(异常类 变量){ 异常处理代码;}
finally{ 一定会执行的代码;}
Finally代码块只有一种情况不会被执行。就是在之前执行了System.exit(0)。
处理过程:Try中检测到异常会将异常对象传递给catch,catch捕获到异常进行处理。
Finally里通常用来关闭资源。比如:数据库资源,IO资源等。
finally块不能单独使用,必须始终与try块在一起
需要注意:try是一个独立的代码块,在其中定义的变量只在该变量块中有效。
如果在try以外继续使用,需要在try建立引用。
在try外对其进行初始化。IO,Socket就会遇到。
jvm处理异常的机制采用的是默认处理机制。
在控制显示出现异常的名称,异常错误信息,及异常的位置。
如果一个异常是编译期间的Exception,必须处理或者继续抛出。
如果一个异常是运行期间的RuntimeException,可以不用处理。
针对异常能处理,就处理。否则就抛。
|