优雅的异常处理 -- Java中的异常

异常

1.常见异常

① NullPointerException——空指针异常:当使用的对象(调用对象的方法或 字段)没有引用或值为null
② ArrayIndexOutOfBoundsException——数组下标越界异常
③ NumberFormatExce——数字格式化异常:将不符合转换格式的字符串转 换为数字式
④ ParseException——解析异常:需要转换为Date的字符串不符合格式
⑤ ClassCastException ——类型转换异常:如果两个类不存在继承关系,且要 相互转换时抛出此异常
⑥ ArithmeticException——运算异常

处理异常方式

try_catch 语句
格式:
try{
可能出异常的代码
}catch(异常类型 异常对象){
处理方式
}
eg:
try{
System.out.println(1/0);
}catch(ArithmeticException e) {
System.out.println(“除数不能为0…”);
}

多异常的处理

① 格式:
try{
可能出现异常的代码
}cathc(异常类型 异常对象){
处理方式
}catch(异常类型2 异常对象2){
处理方式
}…

finally结果

① 格式:
try{
可能出现异常的代码
}cathc(异常类型 异常对象){
处理方式
}finally{
无论是否发生异常都要执行的代码
}
② 注意:

  1. 无论是否会发生异常,都会执行finally结构中的代码
  2. finally中一般放关闭流或释放系统资源的代码
  3. 尽量不放业务逻辑代码,也不要返回数据
异常的抛出

① 语法:
修饰符 返回值类型 方法名() throws 异常类型1,异常类型2…{
方法体
}
② 注意事项:

  1. 运行时异常会自动抛出,非运行时异常必须手动抛出,且必须在throws后明确声明异常类型
  2. 可抛出多种异常,异常类型之间用逗号“,”分割
  3. 谁调用,这处理
获取异常信息

① String getMessage();——返回此异常产生的原因
② String toSring();——返回此异常名称和的产生的原因
③ void printStackTrace();——开控制台打印此异常的名称、产生原因、异常位置

Throwable体系

① Err类:错误
② Exception类

  1. RuntimeException:自动抛出,在编译器不强制要求处理
  2. 非RuntimeException:在编译器强制要求处理,需要手动抛出,且必须明确声明抛出的异常类型
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值