什么是异常
- 异常指程序运行中出现的不期而至的各种状况,如:文件找不到、网络连接失败、非法参数等
简单分类
- 检查性异常:最具代表的检查性异常是用户错误或问题引起的异常
- 运行时异常:是可能被程序员避免的异常
- 错误:错误不是异常,而实脱离程序员控制的问题,错误通常在代码中通常被忽略。
异常体系结构
- Java把异常当作对象来处理,并定义一个基类Java.lang.Throwable作为所有异常的超类。
-
Java api中已经定义了许多异常类,这些异常类分为两大类,错误error和异常exception
Error
Exception
异常处理机制
抛出异常
捕获异常
-
异常处理的五个关键字
try:监控区域 自己的代码
catch:捕获异常
-
finally:处理善后工作
public class Student{ public static void main(String[] args) { int a = 1; int b = 0; try{ //监控区域 System.out.println(a/b); }catch (ArithmeticException){ //捕获异常 System.out.println("程序出现异常"); }catch(){ }finally { //处理善后工作 System.out.println("finally"); } } }
throw:主动抛出异常,一般在方法中使用
throws
自定义异常
public class MyException extends Exception{
//传递数字>10
private int detail;
public MyException(int a){
this.detail = a;
}
//toString:异常的打印信息
@Override
public String toString() {
return "MyException{" + detail + '}';
}
}