JAVA 反射机制,invoke调用用法一个小的用法
2013-08-21 17:27
253 查看
JAVA反射机制基础:
参考:http://lavasoft.blog.51cto.com/62575/43218/
http://java.ccidnet.com/art/3539/20070924/1222147_1.html
JAVA invoke的调用:
有如下的类
现在我们需要测试这个类中的Method1方法,按照java的反射机制我们可以用如下代码运行这个私有方法:
参考:http://lavasoft.blog.51cto.com/62575/43218/
http://java.ccidnet.com/art/3539/20070924/1222147_1.html
JAVA invoke的调用:
有如下的类
public class ClassA{ private int Method1(String[] strs){ int num=0; for(String str:strs) num++; return num; } }
现在我们需要测试这个类中的Method1方法,按照java的反射机制我们可以用如下代码运行这个私有方法:
Class ownerClass=ClassA.class; Method method= ownerClass.getDeclaredMethod("Method1"); method.setAccessible(true); String[] strs= new String[]{"ssss","bbbb"}; ClassA ClassAinstance= new ClassA(); method.invoke(ClassAInstance,strs);会产生参数数目不匹配的异常,原因是invoke函数的动态参数匹配,会讲strs映射到每一个参数上,而不是一个数组变量,解决方案:
Class ownerClass=ClassA.class; Method method= ownerClass.getDeclaredMethod("Method1"); method.setAccessible(true); String[] strs= new String[]{"ssss","bbbb"}; Object[] args=new Object[1]; args[0]=strs; ClassA ClassAinstance= new ClassA(); method.invoke(ClassAInstance,args);
相关文章推荐
- java中的反射机制中invoke典型用法
- java中的反射机制中invoke典型用法
- Java实现一个简单的RPC框架(七) 反射机制调用类函数
- Java中的反射机制 一个利用反射进行对象拷贝的例子
- Java的反射机制---动态调用对象的简单方法
- Java 通过反射机制动态调用java类方法
- 使用java反射中的getMethod,invoke方法调用对象方法的实例
- 关于Java反射机制的一个实例
- java中的反射机制,以及如何通过反射获取一个类的构造方法 ,成员变量,方法,详细。。
- Java 反射 Method的invoke回调调用任意方法
- Java反射的常见用法。和调用规则。
- java中利用反射机制得到一个类的所有构造方法,成员方法机器参数的列表
- Java反射中Method类invoke方法的用法
- java利用反射来调用一个类的私有方法
- Java中的反射机制(二) 一个利用反射进行对象拷贝的例子
- 关于Java反射机制的一个实例
- 【转】java的反射机制中的动态代理代理(二)--在远程方法调用中运用代理类
- 动态调用一个类的简单例子(java反射)
- Java注解(Annotation)用法:利用注解和反射机制指定列名导出数据库数据
- java 反射机制 之 getMethod获取公有方法 getDeclaredMethod获取所有方法 然后invoke执行其所有方法