Java中的异常机制
1 概念
在Java中,异常处理(exception handing):java语言或程序员开发提供的一种机制,当有不正常的情况发生时,可以发出信号。这种发出信号的过程被称为抛出异常(throwing an exception)。
2 异常体系
3 Error和Exception的区别
Error:
- Error类对象由java虚拟机生成并抛出,大多数错误与代码编写者所执行的操作无关。
- 这些错误是不可查的,因为他们在应用程序的控制和处理能力之外,而且绝大多数是程序运行时不允许出现的状况。
Exception:
- 是程序本身可以处理的异常。
- 运行时异常
- 可检查异常
4 运行时异常和可检查异常
运行时异常(RuntimeException):Exception类有一个重要的子类RuntimeException。RuntimeException类及其子类表示“JVM常用操作”引发的错误。例如,若试图使用空值对象引用、除数为0或数组越界,则分别引发运行时异常(NullPointerException、ArithmeticException)和ArrayIndexOutOfBoundException。
**可检查异常:**类型上都属于Exception类及其子类。从程序语法角度讲是必须进行处理的异常,如果不处理,程序就不能编译通过。
5 异常常用的五大关键字
- try
- catch
- finally
- throw
- throws
5.1 try…catch…finally
try…catch
finally
5.1.1 案例
5.2 throws
throws:在方法上声明抛出的可检查异常的类型。
5.3 throw
使用throw抛出异常对象。