java进阶(19)--异常处理机制

一、基本概念
1、异常的作用:
java将异常信息打印至控制台,供程序修改,增加其健壮性。
int c=1/0;    //将抛出 java.lang.ArithmeticException
2、异常以类的形式存在,每个异常类都可以生成异常对象
3、异常的继承关系,UML图描述

 

 

 
4、编译时异常与运行时异常
编译时异常发生概率比较高--如:拿一把伞酒就是对雨天出门"生病异常"发生前的预处理
运行时移仓一般发生概率比较低--如:小明走在大街上,可能会被天上的飞机轮子砸到,无法预处理。
编译时异常:受检异常 checkException
运行时异常:未受检异常,非受检异常 UnCheckedException
 
二、异常处理的两种方式
1、方法声明的位置上,使用throws关键字
2、使用try catch语句进行异常捕捉
举例:
集团销售员,自己失误导致公司损失1000元,throws向上抛异常,try catch:自己掏腰包处理
 
三、使用注意事项
1、一般不建议main方法使用throws,因为jvm只有终止程序,可以使用try catch
2、try catch中try语句执行到异常时候,直接执行catch中语句,其余语句不执行
3、方法上有throws异常时,调用时必须需预处理,属于编译时异常
修改后正常:
4、try,catch可以写多个,当多个catch时,从上到下的顺序,必须遵循从小到大原则
5、jdk8新特性,catch可以捕获多个异常
6、重写方法的异常声明时,可抛出异常不能大于父类的异常
(实际工作中一般和父类方法抛出一样的异常)
 
 
四、异常对象两个非常重要的方法
1、getMessage()
2、printStackTrace()
 
五、fially语句
1、fially子句最后执行,并且一定会执行,即使抛出异常
2、fially子句必须和try语句一起出现,不能单独使用,可以没有catch
3、举例说明
 
六、自定义异常
1、两个步骤
(1)编写类继承Exception或者RuntimeException
(2)提供两个构造方法,一个无参数的,一个有String参数的
2、举例说明
 
七、抛出异常
 
posted @ 2020-09-26 22:57  Mrwhite86  阅读(146)  评论(0编辑  收藏  举报