程序在运行过程中遇到的一些“意外”,例如文件找不到、文件格式不对、网络连接失败、用户输入不符合要求等等影响程序健壮性的“意外”。


分类:
- Error
- Exception
- 运行时异常:编译时检查不出来,运行时才会发现和预期结果不一样
- 数组越界
- 空指针
- 找不到类
- 非运行时异常:编译时就会报错。
1. 作用?
一般程序遇到没有处理过的异常就停止了,java的异常处理机制就是让程序遇到异常后处理一下这个异常,使得程序正常运行下去。
2. 5个关键字
5个关键字:try、catch、finally、throw、throws
3.try-catch-finally 捕获异常
一般try-catch-finally连着使用,举个栗子。 下面代码的a/b可能会发生错误,比如用户让b=0的时候:

加上try-catch-finally捕获异常

PS01:try和catch是必须项。finally处理善后工作,可写可不写。无论被try监控的区域异常与否都会进入finally代码块,所以finally中通常用来处理I/O流、资源、Scanner等的关闭工作(无论是否异常都要关掉这些东西)。
PS02: 多个catch捕获多个异常,把大的放后面(throwable是最大,包括所有error和exception)

PS03:快捷键:选中被try监控的区域,按Ctrl+Alt+T
4. throw 和 throws抛出异常
run()
{