如何捕获异常
Java中使用关键字try、catch和finally来捕获和处理异常。
try { // normal workflow } catch (Exception e) { // handle exception } finally { // do cleanup }
每一段的基本职责不同:try{}中的代码是程序正常执行时的逻辑,也是可能抛出异常的代码段。catch{}中是用来处理Exception的代码,可以有多个catch,但Java编译器强制要求多个catch捕获的Exception范围必须是由小到大,由子类到基类。这是因为当try{}抛出异常时,JVM只会查找和执行第一个和抛出异常相匹配的catch{},而不会执行之后的其它catch{}子句。这一点和switch+case完全不同。
finally{}中的代码无论是否抛出异常都会被执行。因此只要用于清理和释放一些资源,如关闭文件、数据库连接等。异常丢失
这是Java异常处理的一个小问题,显然try{}和catch
Java中使用关键字try、catch和finally来捕获和处理异常。
try { // normal workflow } catch (Exception e) { // handle exception } finally { // do cleanup }
每一段的基本职责不同:try{}中的代码是程序正常执行时的逻辑,也是可能抛出异常的代码段。catch{}中是用来处理Exception的代码,可以有多个catch,但Java编译器强制要求多个catch捕获的Exception范围必须是由小到大,由子类到基类。这是因为当try{}抛出异常时,JVM只会查找和执行第一个和抛出异常相匹配的catch{},而不会执行之后的其它catch{}子句。这一点和switch+case完全不同。
finally{}中的代码无论是否抛出异常都会被执行。因此只要用于清理和释放一些资源,如关闭文件、数据库连接等。异常丢失
这是Java异常处理的一个小问题,显然try{}和catch
![4762217.aspx](https://i-blog.csdnimg.cn/blog_migrate/e4b8183ae710540bfaa46b4c50991462.png)