Java中的异常

来源:互联网 发布:mysql count 编辑:程序博客网 时间:2024/06/10 01:56

    一、异常的分类

    异常主要分为Error类和Exception类,他们的父类都是throwable类。

    Error类一般是说与虚拟机相关的问题,用户不能解决的问题。这类错误会导致应用程序中断,靠程序本身是无法恢复和预防的,遇到这类错误,建议让程序终止。

    Exception表示程序可以处理的异常,遇到这样的异常,应该尽可能的去处理,使程序恢复运行。

    Exception分为运行时异常RuntimeException和受检查时的异常CheckedException。运行时异常编译可以通过,但是运行就会终止,程序不会处理运行时异常,出现这类异常会终止程序。受检查异常需要用try-catch捕获,或者用throws抛出,否则编译不通过。




    二、一个try后面可以有多个catch

try{//可能抛出异常的语句}catch(SomeException1 e){       ........}catch(SomeException2 e){       ........}finally{       ........}



    三、运行程序时,如果第一条语句捕获到异常,那么将不会运行第二条语句,而是通过finally走出代码。如果没有捕获到异常,将不会走catch语句。






    四、finally语句

    1.finally语句为异常处理提供一个统一的出口,使得在控制流程转到程序的其他部分以前,能够对程序的状态统一的管理。

    2.无论try所指定的程序中是否抛出例外,finally所指定的代码都要被执行。

    3.通常在finally语句中可以进行资源的清除工作,比如关闭打开的文件,删除临时文件等。