异常

异常

错误和异常的区别

异常

  • 在程序执行的过程中产生的问题
  • 编译期异常(检查异常)
  • 运行时错误

错误

  • 语法错误(编译期)
  • 运行时错误(不报错,硬件问题和环境问题)
  • 逻辑错误(算法问题,运行期)

运行时异常的处理方式

  • 修改源代码,将异常避免掉
  • 使用异常捕获机制,(try,catch)

try

正常逻辑下可以出现异常的代码

catch

异常处理语句

  • 当try后面有多个catch捕获的异常有几成关系是,必须遵照子类catch写前面,父类catch写后面;

finally

  • 不管是否发生异常,都要执行的代码,往往是资源的回收,内存的清理,通道的关闭等都要用:

编译时异常的处理方式

指一个方法在声明部分书写throws ~~Exception;以至于调用者在编译器搜到警告,(编译不通过)强制要求调用者警用处理

  • throws后面是异常类名,而且可以是多个类名(逗号隔开),表明方法有可能发生异常;
  • throw后面跟的是异常对象,只能跟一个对象,一旦执行到throw这句代码,一定会发生异常
  • 子类重写方法中不能比父类被重写方法抛出更多的异常(这里的更多表示的是范围)
  • 如果throw后面的异常对象是编译时异常,那么该方法声明跟后面必须要throws
  • 如果throw后面的异常对象是运行时异常,那么该方法声明跟后面可以不需要加throws
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值