您的位置:首页 > 其它

j 4000 ava之反射(RPC中应用demo)

2017-12-04 20:53 211 查看
关联文章:

《白话动态代理》

在RPC和动态代理中  经常用到反射,反射就相当于解剖,根据一些jdk提供的方法,类里面的方法,成员变量,构造函数,继承的接口或者类  都可以拿到。

反射方式总结:

1、Class c1 = Class.forName(“Employee”)

2、Class c2 = Employee.class

3、Employee e = new Employee()

   Class c3 = e.getClass()

 

在rpc框架源码中经常用到,根据客户端的请求 :接口名称(interface)、方法名称(method)、参数类型(paramtype)、参数(params),进行反射,demo代码如下:

 

String className = request.getClassName();

Class<?> c = Class.forName(“className”);

Object serviceBean = c.newInstance();

 

String methodName = request.getMethodName();

Class<?> paramTypes = request.getParamTypes();

Object[] params = request.getParams();

 

Method method = c.getMethod(methodName, paramTypes);

method.invoke(serviceBean , params);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: