05java基础进阶之异常

什么是异常:

异常是发生在程序执行过程中阻碍程序正常执行的错误事件。
比如:用户输入错误数据、硬件故障、网络阻塞等都会导致出现异常。只要在Java语句执行中产生了异常,一个异常对象就会被创建,JRE就会试图寻找异常处理程序来处理异常。如果有合适的异常处理程序,异常对象就会被异常处理程序接管,否则,将引发运行环境异常,JRE终止程序执行。
Java异常处理框架只能处理运行时错误,编译错误不在其考虑范围之内。

异常的关键字:

  • try:执行可能尝试异常的代码
  • catch:捕获异常
  • finally:无论是否发生异常,代码总能执行
  • throw:声明方法可能要抛出的各种异常
  • throws:手动抛出异常

使用try-catch块捕获异常,分为三种情况:

第一种情况 :正常

代码不存在错误:
在这里插入图片描述

第二种情况:出现异常

在这里插入图片描述

第三种情况:异常类型不匹配

在这里插入图片描述

异常对象常用的方法:

在这里插入图片描述

异常的类型:

在这里插入图片描述

异常加return的执行顺序:

在这里插入图片描述
先执行finally的内容,再执行return终止语句。

不执行finally:

使用system.exit(0),可以直接跳出,不执行finally语句。

多重catch块:

引发多种类型的异常

  1. 排列catch 语句的顺序:先子类后父类
  2. 发生异常时按顺序逐个匹配
  3. 只执行第一个与异常类型匹配的catch语句

例如:
在这里插入图片描述

throw 与 throws的区别:

throws:用来声明一个方法可能产生的所有异常,不做任何处理而是将异常往上传,谁调用我我就抛给谁。

  • 用在方法声明后面,跟的是异常类名
  • 可以跟多个异常类名,用逗号隔开
  • 表示抛出异常,由该方法的调用者来处理
  • throws表示出现异常的一种可能性,并不一定会发生这些异常

throw:则是用来抛出一个具体的异常类型。

  • 用在方法体内,跟的是异常对象名
  • 只能抛出一个异常对象名
  • 表示抛出异常,由方法体内的语句处理
  • throw则是抛出了异常,执行throw则一定抛出了某种异常
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值