java异常

java异常,第1张

什么是异常:

异常是指在程序的运行过程中所发生的不正常的事件,它会中断正在运行的程序

什么是异常处理:

java编程语言使用异常处理机制位程序提供了错误处理的能力

java中如何进行异常处理:

java的异常处理是通过5个关键字来实现的:try, catch, finally ,throw , throws

使用try-catch块捕获异常(分三种)

第一种:正常

public void method(){
try {
// 代码段(此处不会产生异常)
} catch (异常类型 ex) {
// 对异常进行处理的代码段
}
// 代码段
}

第二种:出现异常

异常是一种特殊的对象,类型为java.lang.Excption或子类

public void method(){
try {
// 代码段 1
// 产生异常的代码段 2
// 代码段 3
 } catch (异常类型 ex) { 
// 对异常进行处理的代码段4
}
// 代码段5
}

第三种:异常类型不匹配

public void method(){ 
 {
// 代码段 1
// 产生异常的代码段
// 代码段 3 
} (异常类型 ex) {
// 对异常进行处理的代码段4
}
// 代码段
}

异常处理:

抛出异常:throw,throws

捕获异常:try,catch,finally

抛出异常throw

throw用在方法内,用来抛出一个异常对象,将这个异常对象传递到调用者处,并结 束当前方法的执行。

调用方法输出异常信息

方法名说明
void printStackTrace()输出异常的堆栈信息
String getMessage()返回异常信息描述字符串,是printStackTrace()输出信息的一部分

常见的异常类型

异常类型说明
Exception异常层次结构的父类
ArithmeticException算术错误情形,如以零作除数
ArrayIndexOutOfBoundsException数组下标越界
NullPointerException尝试访问 null 对象成员
ClassNotFoundException不能加载所需的类
IllegalArgumentException方法接收到非法参数
ClassCastException对象强制类型转换出错
NumberFormatException数字格式转换异常,如把"abc"转换成数字

多重catch块

引发多种类型的异常 :

 排列catch 语句的顺序:先子类后父类

发生异常时按顺序逐个匹配

只执行第一个不异常类型匹配的catch语句

public void method(){
try {
// 代码段
// 产生异常(异常类型2)
} catch (异常类型1 ex) {
// 对异常进行处理的代码段
} catch (异常类型2 ex) {
// 对异常进行处理的代码段
} catch (异常类型3 ex) {
// 对异常进行处理的代码段
}
// 代码段
}

声明异常:

多个异常用逗号隔开

方法一:调用者处理异常

方法二:调用者继续声明异常

小结

1   异常分为Checked异常和运行时异常 :

        Checked异常必须捕获或者声明抛出

        运行时异常不要求必须捕获或者声明抛出

 2   try-catch-finally中存在return语句的执行顺序 

3   finally块中语句不执行的情况

4  throw和throws关键字的区别

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/796259.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-06
下一篇 2022-05-06

发表评论

登录后才能评论

评论列表(0条)

保存