我对java的检查异常感到困惑
Checked Exception需要在编译时使用try,catch和finally关键字进行处理,否则编译器将标记错误
了解更多:http : //javarevisited.blogspot.com/2013/06/10-java-exception-and-error-interview-questions-answers-programming.html#ixzz3pk6OBSrj
我的问题是:我们都知道“ NoSuchMethodExcepion ”是检查异常,并考虑了上面的陈述,这是否意味着每当我尝试调用方法时,我都应该使用try,catch来包含这样的方法调用代码
try{
callingMethod();
}
catch(Exception){
}
但实际上,我不需要这样做吗?那么,首先给出的声明的真正含义是什么?感谢您回答我的问题。
NoSuchMethodException
是的子类型ReflectiveOperationException
,因此只能由使用反射的代码引发。对于像您的示例这样的普通方法调用,该方法不存在是编译时错误,因此您的代码根本不会编译。
如果使用一个版本的依赖项编译类,然后使用其他版本运行它,则在编译时存在的方法可能会消失。在这种情况下,当执行代码时,您会得到一个NoSuchMethodError
(Error
,不是Exception
)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句