Java异常学习(待补充)
1.异常
- Exception
-
检查性异常
运行时异常
错误Error
- 异常体系结构:java把异常当作对象来处理,并定义一个基类java.lang.Throwable作为所有异常的超类
- Error和Exception的区别:Error通常是灾难性的致命的错误,是程序无法控制和处理的,当出现这些异常时,Java虚拟机(JVM)一般会选择终止线程;Exception通常情况下是可以被程序处理的,并且在程序中应该尽可能的去处理这些异常
图片来源:https://www.bilibili.com/video/BV12J41137hu?p=77&spm_id_from=pageDriver
2.异常处理机制
public class Test {
public static void main(String[] args) {
int a = 1;
int b = 0;
try{ //try监控区域
System.out.println(a/b);
}catch(ArithmeticException e){ //catch捕获异常, catch括号中是想要捕获的异常类型,最高是Throwable
System.out.println("程序出现异常,变量不能为0");
}finally { //处理善后工作
System.out.println("finally");
}
//try...catch是必须的
//finally可以不要,一般用来IO流中资源关闭放到这里
}
}
- 异常处理五个关键字:try、catch、finally、throw、throws