java基础-异常处理
一.异常的概念
异常处理机制能让程序在异常发生时,按照代码的预先设定的异常处理逻辑,针对性地处理异常,让程序尽最大可能恢复正常并继续执行,且保持代码的清晰。
异常是运行期间出现的错误,运行期间出现错误以后JAVA处理这种错误的方式是首先会找相应的catch代码,看看有没有使用catch去捕获异常,如果有catch存在,那么JAVA就会自动跳到catch那里去处理异常,如果没有catch,那么JAVA将会把这个错误抛出去,然后将相关的错误信息打印出来。想用catch捕获异常时必须要写try,没有try就不能用catch,try里面写的是有可能产生异常的语句,catch里面写的是当try里面的语句运行时出现了异常的处理方式。
二.异常的分类
Error:称为错误,由java虚拟机jvm生成并且抛出,程序对其不做任何的处理。
Exection:所有异常类的子类,其子类对应了各种各样的异常事件,一般需要显示的声明或者抛出。
Runtime Exection:由系统自动检测并将它们交给缺省的异常处理机制(用户可以不必对其处理)
三.异常的语法
java中异常长用的5个关键字:try、catch、finally、throw、throws
try中包含可能出现的异常的代码,catch中用来出来异常后的处理方式,finally中不管是否出现异常都有执行。
说明:当try中的代码出现错误的时候catch中一定要做相应的处理,哪怕是打印出错误的信息,如果不做任何的操作时代码中的错误不被发现的时候肯可能导致程序的错误并且这个错误还没有的打印,就没有办法知道是那块的代码报错。
而使用j异常中的throws时就会将错误的信息交给java虚拟机处理。最后就是由java虚拟机将异常抛出。如果希望我们的java代码健壮性好,就是用try catch处理。
四.使用自定义异常
1.首先继承java.lang.exection类声明自己的异常类
2.在适当的类中生成异常的实例,并使用throw语句抛出。
3.在方法的声明部分使用throws抛出异常。
总结:
养成良好的编程习惯,不要把错误给吞噬掉(即捕获到异常以后又不做出相应处理的做法,这种做法相当于是把错误隐藏起来了,可实际上错误依然还是存在的), 也不要轻易地往外抛错误,能处理的一定要处理,不能处理的一定要往外抛。往外抛的方法有两种,一种是在知道异常的类型以后,方法声明时使用throws把 异常往外抛,另一种是手动往外抛,使用“throw+异常对象”你相当于是把这个异常对象抛出去了,然后在方法的声明写上要抛的那种异常。

浙公网安备 33010602011771号