异常
Error:Java虚拟机无法解决的严重问题,如JVM系统内部错误、资源耗尽等。
Exception:其他因编程错误或偶然的外在因素导致的一般性问题,可以使用针对性的代码进行处理
分类:
编译时异常
运行时异常
Java异常处理的方式
抓抛模型
过程一:“抛”
程序在正常执行的过程中,一旦出现异常,就会在异常代码处生成一个对应异常类的对象,并将此对象抛出
过程二:“抓”
可以理解为异常的处理方式:
1、try - catch - finally :真正将异常处理了
2、throws:只是将异常抛给了方法的调用者,并没有真正将异常处理
try{
//可能出现异常的代码
}catch(异常类型1 变量名1){
//处理异常的方式1
}catch(异常类型2 变量名2){
//处理异常的方式2
}catch(异常类型3 变量名3){
//处理异常的方式3
}catch(异常类型4 变量名4){
//处理异常的方式4
}
...
finally{//可选的
//一定会执行的代码
}
常用的处理方式
String getMessage()
printStackTrace()
"throws + 异常类型"写在方法的声明处,指明此方法执行时,可能会抛出的异常。
异常的产生:
1、系统自动生成的对象
2、手动的生成一个异常对象,并抛出(throw)
自定义异常类
1、继承现有的异常结构:RuntimeException、Exception
2、提供全局变量
3、提供重载构造器