异常
最常发生的原因
用户输入了非法数据
要打开的文件不存在
网络通信时连接中断,或JVM内存溢出
异常的继承体系结构
Throwable
所有错误或异常的超类
Error
程序无法处理的错误
由JVM产生和抛出
Exception
程序本身可以处理的异常
所南的异留类量从javalangEception更理承的子类
Exception 类是Throwabie类的子类
比如: IDException. RuntimeException
pubilcc String getMessage()
返回关于发生的异常的详细信息
pubilcc void printStackTrace()
打印toString() 结果和线层次到SyStem.err 错误输出
捕获异常
try/catch
try{
// 程序代码
}catch(异常类型1 异常的变量名1){
// 程序代码
}catch(异常类型2 异常的变量名2){
// 程序代码
}catch(异常类型2 异常的变量名2){
// 程序代码
}
throws/throw
如果一个方法没有捕获一个检查性异常,那么该方法必须使用 throws 关键字来声明
hrows 关键字放在方法签名的尾部
也可以使用 throw 关键字抛出一个异常,无论它是新实例化的还是刚捕获到的
一个方法可以声明抛出多个异常,多个异常之间用逗号隔开
finally
finally 关键字用来创建在 try 代码块后面执行的代码块
无论是否发生异常,finally 代码块中的代码总会被执行
在 finally 代码块中,可以运行清理类型等收尾善后性质的语句
finally 代码块出现在 catch 代码块最后
try{
// 程序代码
}catch(异常类型1 异常的变量名1){
// 程序代码
}catch(异常类型2 异常的变量名2){
// 程序代码
}finally{
// 程序代码
}
异常的体系
最新推荐文章于 2024-07-27 13:31:57 发布