异常与异常处理
-Error
-Exception
Exception
-由虚拟机自动抛出并捕获
-RuntimeException(非检查异常)
空指针异常NullPointerException
数组下标越界异常ArrayIndexOutOfBoundsException
类型转换异常ClassCastException
算术异常ArithmeticException
-检查异常
文件异常IOException
SQL语句异常SQLException
处理异常
-try….catch
catch语句编写应先小后大,先子类后父类
-try….catch..finally
finally中编写最终将要执行的代码,例如释放资源
-throws
声明将要抛出何种异常
写在类的开始部分
写在方法体开头
-throw
写在方法体中
-处理异常常用思路
1.采用逻辑合理规避的同时辅助try-catch处理
2.在多重catch完成后,可以加一个catch(Exception)来处理可能会被遗漏的异常
3.对于不确定代码,也可以加上try-catch处理潜在异常
4.尽量处理异常,切忌利用简单的e.printStackTrace()去打印输出
5.具体处理方法需要根据业务类型和需求去决定
6.尽量添加finally语句块去释放占用的资源