java异常机制学习笔记

finally无论是否抛出异常是否有return都执行。
try之后必须有catch或finally。
异常如果不被捕获,则会一层一层地往外抛出调用栈,直到main()方法,然后停止工作并打印栈跟踪。
Throwable
    Exception    Error(不必处理)      ——— 两者都能抛出,并能被捕获。
    
    
可以捕获一个抽象的异常类,但会丢失异常的主要信息。
可以捕获每个具体的异常类,同时应该为每个异常编写单独对catch子句。
最好不要用一个Exception e处理所有异常。

异常匹配:先匹配具体的子类,然后匹配父类。无父子关系的异常不用讲究顺序。

重新抛出相同的异常:在catch处重新抛出后,必须声明它

keyword:
    调用栈,异常匹配

Author: bkdwei