java反射之Method
来源:互联网 发布:c语言数组赋初值 编辑:程序博客网 时间:2024/05/11 09:25
public Object invokeMethod(Object owner, String methodName, Object[] args) throws Exception { Class ownerClass = owner.getClass(); Class[] argsClass = new Class[args.length]; for (int i = 0, j = args.length; i < j; i++) { argsClass[i] = args[i].getClass(); } Method method = ownerClass.getMethod(methodName,argsClass); return method.invoke(owner, args); }
1、Method对象的获取 方法所在类的类对象.getMethod(String methodName,Class[] argsClass);
获取方法Method对象的参数是方法名和方法的参数类。
2、method.invoke(方法所在类的对象,Object[] args);
执行方法参数:方法所在类的实例对象,和实际参数的Object数组;
如果该方法是静态方法,则方法所在类的对象可以为null
例如:
public class Test { @Test public void testMethod() throws NoSuchMethodException, InvocationTargetException, IllegalAccessException, InstantiationException { Class cl=MethodInvoke.class; Student student=new Student(); student.setName("小李"); Method method=cl.getMethod("doSomething",new Class[]{String.class,student.getClass()}); method.invoke(cl.newInstance(),new Object[]{"hehe",student}); }}class MethodInvoke{ public void doSomething(String a,Student stu){ System.out.println(a+" stuName:"+stu.getName()); }}
控制台打印结果:
hehe stuName:小李
0 0
- java反射之Method
- 黑马程序员--java 反射之method 类
- Java反射之Method(一)
- 【java高级特性之反射】Method方法的反射
- Java 反射机制[Method反射]
- 反射之Method类
- 反射之Method
- java反射--METHOD
- java反射-Method
- Java反射机制-method
- java 反射method 相关
- Java反射-Method
- Java反射之Method调用和Filed设置
- java的反射Reflect机制之Method篇
- Java反射之Method调用和Filed设置
- java反射机制之Method invoke执行调用方法例子
- java反射机制之Method invoke执行调用方法例子
- java反射机制之Method invoke执行调用方法例子
- 浅谈《家》中觉新形象与封建宗法制
- 第二章 示例一 二
- 欢迎使用CSDN-markdown编辑器
- 趋势2017校招 笔试题
- 内置函数
- java反射之Method
- NOWHERE
- 如何玩转内容运营?
- 增值你的C++技能,C++成为WEB后台“颜值 ”担当(一)
- 计算机视觉、机器学习相关领域论文和源代码大集合
- JavaWeb学习总结(五十)——文件上传和下载
- [心得]广告技术框架知识整理
- PhotoView 缓存Matrix变形到下一张
- C++常量详解(二)常量形参,常量返回值,常量成员函数