码迷,mamicode.com
首页 > 其他好文 > 详细

jdk代理(只能代理实现了接口的类)

时间:2017-08-03 20:12:56      阅读:181      评论:0      收藏:0      [点我收藏+]

标签:and   构造器   hand   类加载   instance   ade   eth   ssl   动态   

被代理对象实现了某些接口,在运行时产生class(代理)类,使用动态代理实现InvocationHandler接口

1.创建一个实现InvocationHandler的类,它必须实现invoke(proxy:被代理对象,method:被代理方法,args:方法的参数)方法,定义一个Object对象,写一个有参构造器传入。调用method.invoke(target)方法

2.创建被代理的类以及接口,含有业务逻辑方法

3.调用Proxy的静态方法,创建一个代理类
Proxy.newProxyInstance(cls.getClassLoader(), cls.getInterfaces(), h)
* loader 类加载器
* interfaces 类实现接口
* h InvocationHandler

4.调用代理类的方法

jdk代理(只能代理实现了接口的类)

标签:and   构造器   hand   类加载   instance   ade   eth   ssl   动态   

原文地址:http://www.cnblogs.com/cumt-yq/p/7281405.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!