为了账号安全,请及时绑定邮箱和手机立即绑定

【金秋打卡】第3天 Java全栈工程师-Java异常剖析

标签:
Java

课程名称:Java全栈工程师

课程章节:阶段二:Java SpringBoot API打造高级电商业务后端

课程讲师:7七月

课程内容:Java异常深度剖析



异常简介

异常:指的是程序在执行过程中,出现的非正常的情况,最终会导致JVM的非正常停止。异常不是语法错误,语法错误,编译不通过,不会产生字节码文件,根本不会运行JVM。Java 中,异常本身是一个类,产生异常就是创建异常对象并且抛出一个异常对象


异常处理机制主要回答了三个问题:

What:异常类型回答了什么被抛出

Where:异常堆栈跟踪回答在哪抛出

Why:异常信息回答了为什么被抛出



异常分类

Throwable 类是 Java 语言中所有错误或异常的超类

  • Error:错误,无法解决的问题(癌症)

  • Exception:可被解决的问题 (感冒)

    • 受检,编译时期异常:checked异常。在编译时期,就会检查,如果没有处理异常,则编译失败(日期格式化异常)。需要用 try...catch... 语句捕获并进行处理,并且可以从异常中恢复

    • 非受检,运行时期异常:RuntimeException。程序运行时错误,例如除 0 会引发 Arithmetic Exception,此时程序崩溃并且无法恢复


异常处理

throw

作用:在指定的方法中抛出指定的异常

格式:throw new xxxException(“产生异常原因”)


throws

自己不处理,给别人处理

格式:修饰符 返回值类型 方法名(参数) throws 异常类名1,异常类名2…{ }


try...catch...finally



全局异常捕获:

  • 创建一个类,类标注 @ControllerAdvice 注解

  • 写一个方法,方法标注 @ExceptionHandler 注解,在方法中实现对捕获异常的处理逻辑

https://img2.sycdn.imooc.com/635aa2f0000192ae19200854.jpg


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消