异常处理

异常分为Error和exception两种

error属于硬件异常需要人员介入才可以解决
exception需要处理,exception又分为检查时异常和运行时异常,检查时异常是必须处理的否则程序无法通过,运行时异常是代码逻辑错误,如数组越界异常,类型不匹配异常,空指针异常。
异常处理
try--catch--如果不报错catch里面的内容不执行,多个catch时如果上面catch抓到异常则不向下执行异常抓取,父类异常不能卸载子类异常的上面的catch块里。
finally里的内容一定会执行(多用于回收资源),不论程序是否报错。哪怕在try,catch中写了return也会在return之前执行finally。
唯一一种finally里的内容不 执行的情况,调用了退出java虚拟机的代码(不能用)system.exit(0) system.exit(-1)
程序不报错,try,finally
程序报错,try,catch,finally

throw是在方法中主动抛出一个异常,在方法里面,而throws是表明方法里面有一个抛出的异常定义在方法上

throw后面跟的是异常的对象,throws后面跟的是异常的类型

你可能感兴趣的:(异常处理)