java异常指的是java程序中的一些错误,而catch 用于捕获异常,用来捕获try语句块中发生的异常。但是有些开发人员在操作的过程中发现java异常没有被catch捕捉到,这是怎么回事?下面来我们就来给大家讲解一下。
Java有try-catch-finally的异常处理机制,包括以下几种情况:
1、不抛出异常,try里面的代码、finally里面的代码、finally以后的代码都将正常执行,而catch里面的代码不会执行。
2、抛出异常且被catch捕获,try里面的代码部分执行,catch里面的代码、finally里面的代码、finally以后的代码都将正常执行。
3、抛出异常,但未被catch捕获,将会什么情况呢?
先编写一段代码,如下:
注意,上面catch里面故意把异常设置错误。运行结果如下,最后一个println不会被执行,程序只是运行到finally就停止了。
所以,抛出异常,但未被catch捕获时,将会出现以下情况:try里面的代码部分执行,catch里面的代码不执行,finally里面的代码正常执行,finally以后的代码不执行。
java异常如何处理?
1、异常的处理方案
try...catch、try...catch...finally、try...finally
try{undefined
可能会发生的异常
}catch(异常类型 异常名(变量)){undefined
针对异常进行处理的代码
}catch(异常类型 异常名(变量)){undefined
针对异常进行处理的代码
}...
[finally{undefined
释放资源代码;
}]
注意:
catch 不能独立于 try 存在。
catch里面不能没有内容
在 try/catch 后面添加 finally 块并非强制性要求的。
try 代码后不能既没 catch 块也没 finally 块。
try里面越少越好。
try, catch, finally 块之间不能添加任何代码。
finally里面的代码最终一定会执行(除了JVM退出)
如果程序可能存在多个异常,需要多个catch进行捕获。
异常如果是同级关系,catch谁前谁后没有关系
如果异常之间存在上下级关系,上级需要放在后面
2、异常的执行流程
处理java异常是Java人员必备的技能,这在工作中经常遇见,因此我们需要掌握处理java异常方法,正确处理java异常!最后大家如果想要了解更多java常见问答知识,敬请关注奇Q工具网。
推荐阅读: