异常处理原则:
1:函数内部如果抛出需要检测的异常,那么函数上必须要声明,
必须在函数内用trycatch捕捉
否则编译失败
2:如果调用到了声明异常的函数,要么trycatch要么throws,否则编译失败
3:什么时候catch,什么时候throws?
功能内部可以解决,用catch,解决不了用throws告诉调用者,由调用者解决
4:一个功能如果超出了多个异常,那么调用时,必须对应多个catch进行针对性处理
内部有几个需要检测的异常就抛几个异常,抛出几个就要catch几个
*/
/*
try catch finally 代码组合特点:
1:try catch(多个)当没有必要资源需要释放时,可以不用定义finally
2:try finally
3:try catch finally
*/
/*
异常的注意事项:
1:子类在覆盖父类方法时,如果父类的方法抛出了异常,那么子类的方法只能抛出父类的异常或者该异常的子类
2:如果父类抛出多个异常,那么子类只能抛出父类异常的子集;即子类fig父类只能抛出父类的异常
或者子类或者子集
注意:如果父类的方法没有抛出异常,那么子类覆盖时绝对不能抛异常,只能捕获异常try catch
*/