我是Java的新手,我想知道Java是否有像Python异常处理这样的东西,你不必须指定异常类型。类似的东西:
try:
f = open('text.tx', 'r')
except:
#Note you don't have to specify the exception
print "There's an error here"
我希望你能帮助我。
答案 0 :(得分:2)
Java中的每个异常都是java.lang.Exception
的某种扩展。所以你总是这样做:
try {
// something that maybe fails
} catch (Exception e) {
// do something with the exception
}
它会捕获任何其他类型的异常,您只是不知道实际异常是什么,而无需调试。
答案 1 :(得分:2)
是的,有一个叫做try和catch块的东西看起来像这样:
try
{
//Code that may throw an exception
}catch(Exception e)
{
//Code to be executed if the above exception is thrown
}
对于上面的代码,可以像这样检查:
try
{
File f = new File("New.txt");
} catch(FileNotFoundException ex)
{
ex.printStackTrace();
}
希望这有助于了解更多信息:https://docs.oracle.com/javase/tutorial/essential/exceptions/
答案 2 :(得分:2)
您不能忽略异常类型,但最广泛的try-catch块将是:
try {
// Some code
} catch(Throwable t) {
t.printStackTrace();
}
可以捕获Exceptions
,Errors
以及您可能希望投放的任何其他实现Throwable
的类。
在任何地方使用它也是非常愚蠢的,特别是在文件访问这么简单的事情上。 IOException
是一个经过检查的异常,因此无论何时进行文件操作,编译器都会提醒您处理该异常。没有必要全力以赴,只会让你的代码变得更脆弱。