认识异常笔记

#异常

异常:异常是指在程序的运行过程中所发生的不正常的事件,他会中断正在运行的程序

Java的异常处理是通过5个关键字来实现的:try,catch,finally,throw,throws

try{
    //可能出现异常的代码
}catch(Exception e){
    //抓取异常
}finally{
    //无论是否有异常都要执行
}
补充:finally快唯一不执行的情况是:System.exit(1)//退出虚拟机
1. 多个catch语句的 catch 块的顺序很重要,从上至下捕获的异常类型应该从小到大。
2. 子类型的异常应该放在父类型异常的前面,否则会编译错误。
3. finally语句最后一定会被执行,用于资源清理等操作。
4. 一个try只能对应一个finally语句,但可以有多个catch语句。

hasNextInt

if(in.hasNextInt()){
    input.NextInt();
}
hasNextInt可以判断输入的是否是int类型数据。

e.printStackTrace():用来打印异常堆栈信息。

System.err.println():用来输入异常信息

String getMessage():返回异常信息描述字符串,是printStackTrace()输出信息的一部分

面试题:try-catch块中存在return语句,是否还执行finally块,如果执行,说出执行顺序
答:执行! 顺序:try→catch(如果有异常的话)→finally块→return语句

  1. throws声明异常,声明当前方法可能出现的异常,如果不能精确就写父类
    声明当前方法有异常后,调用者必须处理
  2. throw 抛出异常,当前方法有问题的话你抛出一个自己能看懂的异常(指的是你的参数)
    在方法中抛出后 ,只有父类的情况下,必须声明。

异常体系结构

Throwable 可抛的异常

  1. error 仅靠程序本身无法修复的严重错误

  2. Exception 异常 程序中有办法修复的非严重错误

    1. RuntimeException 程序运行时异常(运行时必须解决的)

    2. CheckedException 受检异常(在编写代码的时候必须解决的)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值