1.程序中的异常
(1)在程序运行过程中,意外发生的情况,背离我们程序本身的意图的表现,都可以理解为异常。
(2)利用java中的异常机制,我们可以更好地提升程序的健壮性。
(3)在java中,通过Throwable及其子类描述各种不同的异常类型。
2.异常的类型
3.异常处理
在java应用程序中,异常处理机制为:抛出异常,捕捉异常
通过5个关键字来实现:try、catch、finally、throw、throws
4.try-catch-finally
实际应用中的经验与总结
(1)处理运行异常时,采用逻辑去合理规避同时辅助try-catch处理
(2)在多重catch快后面,可以加上一个catch(Exception)来处理可能会被遗漏的异常
(3)对于不确定的代码,也可以加上try-catch,处理潜在的异常
(4)尽量处理异常,切忌只是简单的调用printStackTrace()去打印输出
(5)具体如何处理异常,要根据不同的业务需求和异常类型去决定
(6)尽量添加finally语句去释放占用的资源
5.throw、throws
可以通过throws声明将要抛出何种类型的异常,通过throw将产生的异常抛出
如果一个方法可能会出现异常,但没有能力处理这种异常,可以在方法声明处用throws子句抛出异常
6.throw的使用规则
当子类重写父类抛出异常的方法时,声明的异常必须是父类方法所声明异常的同类或子类
7.throws的使用规则
当子类重写父类抛出异常的方法时,声明的异常必须是父类方法所声明异常的同类或子类
8.自定义异常
可以通过自定义异常描述特定业务产生的异常类型
所谓自定义异常,就是定义一个类,去继承Throwable类火灾它的子类
9.异常链
当捕获一个异常后再抛出另外一个异常时,如果希望将异常发生的原因一个传一个串起来,即把底层的异常信息传给上层,就形成了异常链