异常(Exception)的定义
1、程序运行时出现的出错误
2、异常的分类
1)编译时异常
2)运行时异常
3、发成异常程序终止
异常的捕获
try{
// 可能出现异常的代码,出现异常后直接跳到 catch 不继续执行后面的代码
}catch(异常类型 异常变量名){ // 捕获异常后把捕获的异常赋值给异常变量名 可以有多个catch用来捕获多种异常
// 捕获异常后执行这里面的代码
}finally{ // 不一定要有,一般用来释放资源
// 不管有没有捕获异常都要执行这里面的代码
}
一些建议:
1、不要在 finally 中使用 return
2、不要在 finally 中抛出异常
3、尽量减轻 finally 的任务,一般只释放资源
4、尽量将所有 return 卸载捕获异常结构外
throw关键字:用来手动抛出异常
throws关键字:后面加上异常类型写在方法括号后面(方法名() throws Exception),用来标识这个方法可能抛出的异常,方便在调用此方法时捕获异常。
注意:
1、重写方法时需要抛出与被重写方法一致的异常(或子类)
2、早抛出,晚捕获
3、不要压制异常
4、抛出异常要尽量具体(一般不要抛出 Exception )
5、不要在 try catch 结构 中用 try catch 结构