2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 深入解析MapReduce架构设计与实现原理–读书笔记(7)hadoopRPC反

深入解析MapReduce架构设计与实现原理–读书笔记(7)hadoopRPC反

时间:2023-10-06 20:21:26

相关推荐

深入解析MapReduce架构设计与实现原理–读书笔记(7)hadoopRPC反

数据库|mysql教程

深入,解析,MapReduce,架构,设计,实现,原理,读书

数据库-mysql教程

vb6.0做登录界面源码,vscode首代码新增,ubuntu dpo,tomcat这么用,qt连接sqlite3,隐藏旋转图标 插件,加载速度快的前端框架,去哪网团购爬虫,php生成rsa,SEO兼职哪里招,国外网站后台模板下载,网页浮窗怎么变大,网页模板网盘下载lzw

hadoop RPC 中用到的JDK开发工具包中的一些类。 主要包括java.lang. reflect 反射机制和动态代理相关类。网络编程库,java.nio(NIO) 1.java反射机制和动态代理 反射机制是java语言的一个重要特性,它允许用户动态获取类的信息和动态调用对象的方法

源码 触摸滑动,vscode mac安装,ubuntu按钮,tomcat测试步骤,sqlite3 启动参数,discuz 插件手机设计,前端比较好用的框架,怎么消除粪池的蛆爬虫,php加密源代码,连江网络seo价格,手机网站单页,网页分类列表特效,企业oa模板下载不了lzw

积分墙商业源码,vscode图片大小,ubuntu 完整卸载,怎么解决tomcat占用,sqlite回滚日志有多大,支付宝水果可以爬虫爬取吗,php 微信 上传图片,seo顾问优化推广工具,双语版网站案例,dz企业模板破解lzw

hadoop RPC中用到的JDK开发工具包中的一些类。

主要包括java.lang.reflect反射机制和动态代理相关类。网络编程库,java.nio(NIO)

1.java反射机制和动态代理

反射机制是java语言的一个重要特性,它允许用户动态获取类的信息和动态调用对象的方法。

Class类 代表一个java类

Field类 代表Java类的属性

Method类 代表Java类的方法

Constructor类 代表java类的构造函数

Array类 提供了动态创建数组,以及访问数组元素的静态方法

Proxy类和InvocationHandler接口 提供了动态生成代理类以及实例的方法。

代理是一种常用的设计模式,其目的是为其他对象提供一种代理以控制对这个对象的访问。代理类负责为委托类进行预处理,或者执行完后的后续处理。

java.lang.reflect.Proxy

这是java动态代理机制的主类,它提供了一组静态方法,用于为一组接口动态地生成代理类及对象。

static InvocationHandler getInvocationHandler(Object proxy) //获取指定代理对象所关联的调用处理器static Class getProxyClass(ClassLoader loader,Class[] interfaces) //获取关联于指定的类装载器和一组接口的动态代理类的对象static boolean isProxyClass(Class cl) //判断指定的类对象是否一个动态代理类static Object newProxyInstance(ClassLoader loader,Class[] interfaces,InvocationHandler h) //为指定类装载器,一组接口及调用处理器生成动态代理类实例

java.lang.reflect.InvocationHandler

这是调用处理器接口。它定义了一个invoke方法,用于处理在动态代理类对象上的方法调用。开发人员需要实现该接口,并在invoke方法中实现对委托类的代理访问。

//下方法负责处理动态代理类上的所有方法调用。三个参数:代理类实例,被调用的方法,调用参数。Object invoke(Object proxy,Method method,Objects[] args)示例如下:package com.sw.testproxy;import java.lang.reflect.InvocationHandler;import java.lang.reflect.Proxy;import java.lang.reflect.Method;interface CalculatorProtocol {public int add (int a,int b);public int subtract(int a,int b);}class Server implements CalculatorProtocol{@Overridepublic int add(int a, int b) {return a+b;}@Overridepublic int subtract(int a, int b) {return a-b;}}class CalculatorHandler implements InvocationHandler{private Object objOriginal ;public CalculatorHandler(Object obj){this.objOriginal = obj ;}@Overridepublic Object invoke(Object proxy, Method method, Object[] args)throws Throwable {Object result = method.invoke(this.objOriginal,args);return result;}}public class DynamicProxyExample {public static void main(String[] args) {CalculatorProtocol server = new Server();InvocationHandler handler = new CalculatorHandler(server);CalculatorProtocol client = (CalculatorProtocol)Proxy.newProxyInstance(server.getClass().getClassLoader(), server.getClass().getInterfaces(),handler);int r = client.add(5,3);System.out.println(r);}}

原文地址:深入解析MapReduce架构设计与实现原理–读书笔记(7)hadoopRPC反射原理, 感谢原作者分享。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。