一个程序是否优秀健壮,很大程度决定于对异常情况的设计和考虑。从这个角度来讲,异常处理的重要性,丝毫不低于正常的业务流程代码开发。本专题将从实践中总结到多种涉及到异常相关的经验,予以分享。
一、异常知识体系
常见异常和错误的类继承关系
异常处理流程
1、 一旦产生异常,则系统会自动产生一个异常类的实例化对象。
2、 那么,此时如果异常发生在try语句,则会自动找到匹配的catch语句执行,如果没有在try语句中,则 常抛出.
3、 所有的catch根据方法的参数匹配异常类的实例化对象,如果匹配成功,则表示由此catch进行处理。catch的编写方式应该由具体到抽象的顺序,而不能反过来。比如catch(NullPointerException)->catch(RuntimeException)->catch(Exception)
4、在进行异常的处理之后,在异常的处理格式中还有一个finally语句,那么此语句将作为异常的统一出口,不管是否产生 了异常,最终都要执行此段代码。