美文网首页
动态代理

动态代理

作者: 8dc010427b39 | 来源:发表于2017-02-21 20:44 被阅读0次

    动态代理它可以直接给某一个目标对象生成一个代理对象,而不需要代理类存在。动态代理与代理模式原理是一样的,只是它没有具体的代理类,直接通过反射生成了一个代理对象。

    KindWoman

    public interface KindWoman {

    public void throwEye();

    public void doSomething();

    }


    PJL

    public class PJL implements KindWoman{

    public void throwEye() {

    System.out.println("PJL抛媚眼");

    }

    public void doSomething() {

    // TODO Auto-generated method stub

    System.out.println("PJL...");

    }

    }


    XMQ

    final KindWoman kw = new PJL();

    //生成动态代理类

    KindWoman proxy = (KindWoman) Proxy.newProxyInstance(kw.getClass()

    .getClassLoader(), kw.getClass().getInterfaces(),

    new InvocationHandler() {

    public Object invoke(Object proxy, Method method,

    Object[] args) throws Throwable {

    return method.invoke(kw, null);

    }

    });

    proxy.throwEye();

    proxy.doSomething();



    相关文章

      网友评论

          本文标题:动态代理

          本文链接:https://www.haomeiwen.com/subject/rbouwttx.html