0%

Java中级-异常处理

异常处理

  • 使用try catch捕捉异常

    • 直接catch异常的类 如catch(FileNotFoundException e){}

    • catch父类 如catch(Exception e){}

    • 分别catch多个异常

      • catch(FileNotFoundException | ParseException e){}

      • catch(FileNotFoundException e){}

        catch(ParseException e){}

  • finally:无论是否出现异常,finally中的代码都会被执行

  • throws:表示可能抛出异常,用于方法声明上

    • try catch是在接到异常后进行处理,throws是在方法体处声明,若遇到异常就向调用该方法的主体抛出异常,自身无需处理,主体则需进行try catch进行处理
  • throw:表示抛出异常,用语方法体内,必然会抛出某个异常对象

异常分类

  • 可查异常CheckedException:必须进行处理的异常,可以一直抛出但最后必须被try-catch,否则编译无法通过。如Filenotfoundexception

  • 运行时异常RuntimeException:不是必须要被try-catch

  • 错误Error:为系统级别的异常,通常是内存用光了,比如在主方法内不停的给Stringbuffer追加字符,同样不需要强制捕捉

    image-20200908233141951

  • Throwable:是类,Exception和Error都继承了该类,所以在捕捉时也可以使用Throwable进行捕捉。