1、分类
- 检查性异常
- 用用户错误或问题引起异常,无法预见
- 运行时异常
- 可以被程序员避免的异常,在运行时异常可以在编译的时候会被忽略
- 错误Error
- 错误不是异常,而是脱离程序员控制的问题。
2、结构
-
大致为两类 Error 和 Exception
-
Error和虚拟机生成抛出的。灾难性的
-
Exception由程序逻辑引起 和程序员有关。 可以被程序处理的
-
Throwable
-
Error
- VirtulMachineError
- StackOverFlowError
- OutMemoryError
- AWTError
- VirtulMachineError
-
Exception
-
IOException
- EOFException
- FileNotFoundException
-
RuntimeException
- NullPointException
- ArrithmeticException
- MissingRecourceException
- ClassNotFoundException
- IllegalArgumentException
- ArryIndexOutOfBoundsException
- UnkownTypeException
-
-
3、关键字
- try
- catch
- finally
- throw
- throws
4、例子
public static void main(String[] args) {
//尝试运行
try{
int[] arr=new int[10];
System.out.println(arr[45]);
//捕获异常
}catch (Exception e){
e.printStackTrace();
//处理善后工作,不管出没出异常 都会执行代码块内的代码
}finally {
System.out.println("你好");
}
}