我曾经认为当异常发生时,整个java应用程序都会被终止。例如,我编写了一个测试函数来测试我的想法。
public void test(){
File fileDir=new File(sourceDataDir);
if(fileDir.exists()){
File[] files = fileDir.listFiles();
for(int index=0 ; index<files.length ; index++){
System.out.println("index = "+index);
File file = files[index];
if(index == 1)//delete a file to cause a FileNotFoundException
file.delete();
try {
BufferedReader in = new BufferedReader(new FileReader(file));
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
}
FileNotFoundException
我手动删除了一个文件。我曾经认为当异常发生时整个应用程序将终止。但实际上,应用程序会继续读取剩余的文件。所以,我的问题是,在什么情况下异常会导致整个应用程序被终止?