课程名称: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 注解,在方法中实现对捕获异常的处理逻辑
共同学习,写下你的评论
评论加载中...
作者其他优质文章