在Java中,如果我们通过扩展Exception类来创建自定义异常,那么它将被视为已检查的异常。根据定义,编译器强制检查异常,如果我们在下面编写代码,那么我们必然会捕获FileNotFoundException
try{
fis = new FileInputStream("abc.txt");
}
catch(FileNotFoundException e)
{
System.out.println("The source file does not exist. " + e);
}
为了调用自定义异常,我需要显式抛出它。那么如何检查呢?它应该是未选中的,因为编译器不会强迫我做任何事情。
此致 筛海
答案 0 :(得分:0)
选中/未选中是指使用您的方法抛出异常的代码处理异常的要求。
假设您在方法中抛出一个未经检查的异常(RuntimeException或其子类)。您无需表示您的方法会抛出它,并且任何使用您的代码的人都不需要显式处理它。
但是,如果抛出已检查的异常(异常不是RuntimeException的子类),那么您的方法必须明确地说它抛出异常,并且任何使用您的代码的人都必须处理该异常 - 或者通过将它们的方法声明为抛出的方法一个异常(重新抛出)或使用try-catch块,围绕调用抛出已检查异常的方法。