异常的处理办法二
声明异常:throws子句
- 当Checked Exception产生时,不一定立刻处理它,可以再把异常Throws出去。
- 如果一个地方抛出多个已检测异常,就必须在方法的首部列出所有的异常,之间以逗号隔开。
public class Test02 {
public static void main(String[] args) {
String str;
try{
str = new Test02().ReadFile();
}catch(FileNotFoundException e){
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 只声明异常,谁调用这个方法,谁处理。我只抛出
* @return
* @throws FileNotFoundException
* @throws IOException
*/
String ReadFile() throws FileNotFoundException,IOException{
FileReader reader = new FileReader("d/b.txt");
char c = (char)reader.read();
return "";
}
}
方法重写中声明异常原则
子类声明的异常范围不能超过父类声明范围。
包括如下意思:
- 父类没有声明异常,子类也不能。
- 不可抛出原有方法抛出异常类的父类或上层类
- 抛出的异常类型的数目不可以比原有的方法抛出的还多(不是指个数)