Exception类
当程序出现异常情况,有没有处理,那么程序将直接结束(崩溃)
处理方法:
使用try-catch捕获异常
try{}//括号里面写代码块,将捕获代码块里的异常,当代码块出现异常,后面的代码将不会被执行,所以不要让try包裹太多内容
catch(具体的异常类 e){}//使用catch捕获具体的一个异常
抛出异常时,为了结构以及可读性,尽量不要嵌套太多层(最多2层)
finally{}//释放资源,java只会释放在堆或栈上的资源,不会释放外部资源
不管有没有异常,finally里面的代码都会被执行
使用场合:
1.需要释放文件,网络和数据库资源
2.有些代码不管有没有异常都需要被执行
使用Exception拦截所有异常
有多个catch时,按子类到父类的顺序catch,如果父类在前,将会拦截子类catch
如果不关心具体的异常,只是处理异常,可以只用父类catch
抛出和自定义异常
throw抛出异常使用情况:
当某个方法执行完成某个功能,执行时可能出现异常,这种异常需要调用者自己决定如何处理(例:输入数据不合适等)