前言:
现时兄弟们对“java反射方式”大概比较关切,姐妹们都需要剖析一些“java反射方式”的相关资讯。那么小编同时在网络上收集了一些对于“java反射方式””的相关内容,希望大家能喜欢,看官们一起来学习一下吧!
* 初始类
public class ReflectDemo {
//静态方法
public static Integer myStaticMethod(Integer a, Integer b) {
System.out.println(a+b);
return a + b;
}
//实例方法
public Integer myInstanceMethod(Integer a, Integer b) {
System.out.println(a+b);
return a + b;
}
}* 传统方式
ReflectDemo object = new ReflectDemo();
// 方法对象
Method method = object.getClass().getDeclaredMethod("myInstanceMethod", Integer.class, Integer.class);
// 调用(对象实、参数)
method.invoke(object, 1, 1);* 现代方式
ReflectDemo object = new ReflectDemo();
// MethodHandle 方法句柄
// MethodType 方法签名(返回值类型、参数类型)
MethodHandle myInstanceMethod = MethodHandles.lookup().findVirtual(ReflectDemo.class, "myInstanceMethod", MethodType.methodType(Integer.class, Integer.class, Integer.class));
// 调用(对象实、参数)
myInstanceMethod.invoke(object, 1, 1);
* 开源工具(JOOR )
Reflect.on(ReflectDemo.class).create().call("myInstanceMethod", 1, 1).get();
版权声明:
本站文章均来自互联网搜集,如有侵犯您的权益,请联系我们删除,谢谢。
标签: #java反射方式