首页 > 其他 > 详细

jdk动态代理

时间:2018-09-15 22:24:39      阅读:176      评论:0      收藏:0      [点我收藏+]

package jdk动态代理;

public interface 一个接口 {
    public void sys();
    
}

package jdk动态代理;

public class 一个类  implements 一个接口{

    @Override
    public void sys() {
        // TODO 自动生成的方法存根
        System.out.println("1");
        
    }

}

package jdk动态代理;

import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;

public class 动态代理类 implements InvocationHandler{
    Object obj = null;
    public Object s(Object obj) {
        this.obj= obj;
        return Proxy.newProxyInstance(obj.getClass().getClassLoader(), obj.getClass().getInterfaces(), this);
    }
    @Override
    public Object invoke(Object arg0, Method arg1, Object[] arg2) throws Throwable {
        // TODO 自动生成的方法存根
        Object obj = arg1.invoke(this.obj, arg2);
        return null;
    }
    
}


package jdk动态代理;

public class 实现类 {
    public static void main(String[] args) {
        动态代理类 d = new 动态代理类();
        一个接口 y = (一个接口) d.s(new 一个类());
        y.sys();
    }
}

 

jdk动态代理

原文:https://www.cnblogs.com/xiaosuye/p/9652602.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!