捕获反射调用时产生的异常

原创 2006年05月29日 15:49:00
 使用反射时如果被反射对象内部发生异常时通常的捕获异常语句及参数,不能截获其中的异常:

try
{
//反射操作
}
catch(System.Exception ex)
{
....
}

因为此时的异常类型已经不是System.Exception 类型,而是System.Reflection.TargetInvocationException 类型

try
{
//反射操作
}
catch(System.Reflection.TargetInvocationException ex)
{
....
throw ex.InnerException;
}


    这是MSDN中的相关信息:
创建 TargetInvocationException 后,向其传递对通过反映调用的方法所引发的异常的引用。InnerException 属性保存基础异常。

也就是说只要取到这个异常的InnerException属性,就是你要处理的那个异常。

[JAVA]运用反射机制,抛出的异常的捕获方法

背景介绍笔者前些日子做过一个这样的事情,利用反射机制调用一个会报Checked的异常的方法,在调用后没法抛出异常(原因是反射机制调用是没法catch到Checked异常的)。举个简单的例子如下。 1...

6.2判断一个数能否被3整除,如果不能整除就抛出一个异常,并让其调用方法来捕获,显示相应的处理信息

摩尔的Java学习笔记6.2 判断一个数能否被3整除,如果不能整除就抛出一个异常,并让其调用方法来捕获,显示相应的处理信息;...

jquery 1.7 1.5 1.9 jsonp调用后产生的异常

1.4版的jquery使用以下调用方式没有问题 $.getJSON("http://zhidao.51auto.com/qa_json?type=3&size=5&jsoncallback=?", ...
  • sl0007
  • sl0007
  • 2013年07月01日 13:58
  • 587

Object-C基础(10)——异常处理、反射、动态调用方法与内存回收

Object-C的异常处理      Object-C的异常处理,通常不会作为常规的编程手段,很多时候只是作为程序调试的手段。      语法      @try      {       ...

利用反射原理调用方法抛出异常:argument type mismatch

起因:自己弄得一个购物网站,这几个封装类都能显示正确的数值,唯独价格这里是double的默认值,说明用反射塞值出了错误。 查看代码:发现错误的原因在这里,给double类型的price设值得时候会报...

反射调用主方法异常解决

利用Java反射机制去调用其他类的main方法基于这种情形:      当程序中的某个类在运行到某处需要去调用其他类的main方法时,如果此程序并不知道此main方法所属类的名称,而只是在程序中接受某...
  • easyjsf
  • easyjsf
  • 2011年06月21日 11:24
  • 689

Swift 读取本地json文件时的异常捕获(try catch)的使用

Swift 读取本地json文件时的异常捕获(try catch)的使用 // 1.获取文件路径 let path = NSBundle.mainBundle().pathForRe...

Android小技巧(一):实现捕获应用的运行时异常

转载请注明出处!本博客地址:http://blog.csdn.net/mylzc 由于Android设备各异,第三方定制的Android系统也非常多,我们不可能对所有的设备场景都进行测试,因而开...
  • mylzc
  • mylzc
  • 2011年09月18日 00:44
  • 9677

实现捕获应用的运行时异常

转自:http://blog.csdn.net/mylzc/article/details/6786243 由于Android设备各异,第三方定制的Android系统也非常多,我们不可能对所有的设...

ios 程序崩溃时捕获到异常信息

iOS开发中遇到程序崩溃是很正常的事情,如何在程序崩溃时捕获到异常信息并通知开发者,是大多数软件都选择的方法。下面就介绍如何在iOS中实现: 1. 在程序启动时加上一个异常捕获监听,用来处理程序...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:捕获反射调用时产生的异常
举报原因:
原因补充:

(最多只允许输入30个字)