概要
异常是代码运行时出现的错误
异常的问题:程序会终止运行,.如果代码出现了异常那后面的代码就不运行了
编译时异常
代码还没运行,就出现了问题
异常类型 | 说明 |
---|---|
SQLException | 操作数据库时查询表可能发生的异常 |
IOEException | 操作文件时发生的异常 |
FileNotFoundException | 操作不存在文件时发生的异常 |
ClassNotFoundException | 加载类而类不存在时发生的异常 |
EOFEException | 操作文件到文件末尾发生异常 |
IIIegalArguementException | 参数异常 |
运行时异常
代码在正常的运行过程中出现的问题
异常类型 | 说明 |
---|---|
NullPointerException | 空指针异常,当应用程序试图在需要对象的地方出现null时抛出该异常 |
ArithmeticException | 数组下标越界异常,用非法索引访问数组时抛出的异常 |
ClassCastException | 类型转换异常,当试图将对象强制转换为不是实例的子类时抛出该异常 |
NumberFormatException | 数字格式不正确异常,当应用程序试图将字符串转换成一种数值类型,但该字符串不能转换为适当格式时抛出该异常 |
解决异常
捕获异常
try{
// 程序代码
}catch(异常类型1 异常的变量名1){
// 程序代码
}catch(异常类型2 异常的变量名2){
// 程序代码
}finally{//不管有没有异常都会执行, 一般用来释放资源
// 程序代码
}
如果try有多个异常,那catch也要有多个,每个catch只能捕获一个异常,
catch里的异常,从大到小,从左到右,从子到父
抛出异常
throw 生成异常
throws 抛出异常 谁调用抛给谁 最终抛给JVM处理