目录
1.认识异常
在Java中,异常是指程序运行过程中发生的错误或意外情况,如文件不存在、空指针等。Java通
过引入异常机制,将错误处理逻辑从业务逻辑中分离出来,提高了代码的可维护性和健壮性。
2.java中常见的异常
-
NullPointerException(空指针异常):通常发生在试图使用一个值为null的对象时。处理方法包括检查是否有变量未赋值、是否调用了不存在的方法或属性等。
-
ArrayIndexOutOfBoundsException(数组越界异常):通常发生在试图访问数组的不存在的索引时。处理方法包括检查数组大小、确保索引不超过数组下标范围等。
-
ClassCastException(类转换异常):通常发生在试图把一个对象类型强制转换成错误的类型时。处理方法包括先进行类型判断,避免错误地类型转换。
-
FileNotFoundException(文件未找到异常):发生在试图打开一个不存在的文件时。处理方法包括检查路径和文件名拼写是否正确,并确保文件存在。
-
Java.lang.Exception类是程序本身可以处理的异常,可分为运行时(RunTimeException)异常与检查(Checked) 异常。
-
IllegalArgumentException //当向方法传递了一个不合法或不正确的参数时,抛出此异常
-
NumberFormatException //当试图将字符串转换成一种数值类型,但该字符串不能转换为适当格式时,抛出此异常。例如,把“ABC”转换成数字
-
ArithmeticException //当出现算术错误时,抛出此异常。例如,在一个整数“除以0”时,抛出此异常
3.处理异常的流程
在Java中处理异常的流程如下:
-
在可能会抛出异常的代码段前使用try关键字,后跟一对花括号包含该代码段。
-
使用catch关键字来捕获可能抛出的异常,并指定要捕获的异常类型。可以有多个catch组成一个catch块。
-
在异常发生时会抛出一个异常对象,利用catch块中的变量名来获取该异常对象,从而进行异常处理和恢复操作。
-
catch块内的代码用于处理异常,并执行必要的恢复操作,尽量将异常处理措施体现在该块内,确保其中不会再次发生异常。
-
try-catch语句最后可以加上可选的finally块,在任何情况下它都会被执行。通常在finally块内释放资源、关闭文件等类似的清理工作
try {
// 可能会抛出异常的代码
} catch (ExceptionType1 e) {
// 处理第一种异常的程序代码
} catch (ExceptionType2 e) {
// 处理第二种异常的程序代码
} finally {
// 始终会执行的代码块
}
4.声明异常
声名异常——thows关键字
语法:
public void 方法名 ()throws 异常类型[,异常类型]{
//方法体
}]
抛出异常——thow关键字
语法:
throw new 异常名 ([参数列表]);