当我尝试从方法声明中抛出一个异常时,我得到错误“ClassNotFoundException的Unreachable catch块,这个异常永远不会从try语句体中抛出。我可以从方法中捕获抛出异常吗?
的代码是这样的:
public class MenuSQL {
private static String sentence = "";
private static int option;
Statement sentenceSQL = ConnectSQL.getConexion().createStatement();
public MenuSQL(int option) throws ClassNotFoundException, SQLException {
super();
this.option = option;
try {
System.out.print("Introduce the sentence: ");
System.out.print(sentence);
sentence += new Scanner(System.in).nextLine();
System.out.println(MenuSentence.rightNow("LOG") + "Sentence: " + sentence);
if (opcion == 4) {
MenuSentence.list(sentence);
} else {
sentenceSQL.executeQuery(sentence);
}
} catch (SQLException e) {
System.out.println(MenuSentence.rightNow("SQL") + "Sentence: " + sentence);
} catch (ClassNotFoundException e) {
System.out.println(MenuSentence.rightNow("ERROR") + "Sentence: " + sentence);
}
}
}
我如何能赶上ClassNotFoundException
?提前致谢。
为什么你想要捕捉一个永远不会抛出你的'try'block的异常?为什么你的方法抛出异常,但它捕捉到它们? –
该方法内部没有任何可以引发ClassNotFoundException的点。 –
这是因为编译器迫使我在方法 –