什么可能导致java.lang.reflect.InvocationTargetException?
好吧,我试图理解和阅读可能导致它的原因,但我无法得到它:
我在我的代码中有这个地方:
try{ .. m.invoke(testObject); .. } catch(AssertionError e){ ... } catch(Exception e){ .. }
事实是,当它试图调用某个方法时,它会抛出 InvocationTargetException
而不是其他预期的异常(具体而言ArrayIndexOutOfBoundsException
)。因为我实际上知道调用了什么方法,所以我直接使用了这个方法代码,并为假设要抛出的行添加了一个try-catch块ArrayIndexOutOfBoundsException
,它确实ArrayIndexOutOfBoundsException
按预期抛出。然而,当它上升时它以某种方式改变,InvocationTargetException
并且在上面的代码中,catch(Exception e)
e InvocationTargetException
并不ArrayIndexOutOfBoundsException
像预期的那样。
什么可能导致这样的行为或我如何检查这样的事情?
慕丝7291255
有只小跳蛙
弑天下
相关分类