1、Throwable下有个异常子类:error和execption。
Error:是不能靠程序能处理的,比如:内存溢出。
Exception:运行时异常(非检查异常)和非运行时异常(检查异常)
2、常见的运行时异常:
1) NullPointerException(空指针异常)当操作一个空引用抛出的一个异常
2) NumberFormatException(数据格式化异常)试图将字符串转换为一种数值类型时,但字符串转换不适当出现的异常。
3) ClassCastException(类型转换异常)强制类型转换不匹配时出现的异常。
4) ArrayIndexOutOfBoundsExveption(数组下标越界异常):当使用一个不存在的下标时出现的异常。
5) ArithmeticException(数字异常):异常运算条件时出现的
非运行时异常:
1) SQLException:访问数据库时出现的
2) IOException :当发生某种I/O异常时抛出的
3) ClassNotFoundException:当应用程序使用Class类中的forName方法、loadClass方法时,抛出的异常。
3、在JAVA语言中,如何引发异常?对异常处理的途径?
在java中可以使用throw来引发异常。
1) 使用throws抛出异常,
2) 使用try-catch语句捕获异常。
(当调用一个含有throws声明异常抛出的方法时,编译器要求必须处理这个异常, 而处理方式有两种:
1:使用try-catch处理该异常
2:在当前方法上继续声明throws将该异常
抛出)
4、名词解释:
Try:用来指定一块预防所有异常的程序,
Catch字句紧跟在try后面,用来指定想要捕获的异常
Throw语句用来明确抛出一个异常
Throws用了标明这个方法可能会抛出的各种异常 try{}catch()finally{}
finally块是异常捕获机制中的最后一块。
finally可以直接跟在try后面或者最后一个catch之后。
finally可以保证只要程序执行到try语句块中,无论
try语句块中的代码是否抛出异常,finally块中的代码
都必定执行。
注意: 通常会将无论是否出现异常都要运行的代码放在 finally中确保运行,比如IO操作中的关闭流。
Final是一个修饰符。
Finalize是方法名,此方法是在垃圾回收器将对象从内存中清除之前做必要的清理工作。