设计模式-动态代理模式

来源:互联网 发布:忐忑 知乎 编辑:程序博客网 时间:2024/05/18 19:19

动态代理模式输出问题

动态代理模式main测试之前加入

  System.setProperty("sun.misc.ProxyGenerator.saveGeneratedFiles", "true");

就可以在项目根目录下的com中找见,可以搜索$Proxy0.class 或者Proxy

注意不是在当前main函数目录下,实在根目录中的com中。

注意不是在当前main函数目录下,实在根目录中的com中。

注意不是在当前main函数目录下,实在根目录中的com中。

动态代理理解

代理就是不让原本干这件事的人干。我接受到任务,在分配下去,对原有事件进行修改。

静态代理就是买票,干什么 ,每干一个事都要写一个代理。用的都是相同接口

动态代理就是大家都用一个代理。他会聪明的动态分配,必须是一类事物,但是不是相同接口。

主要是实现InvocationHandler,中的invoke方法。实现动态代理。一般对于事件加before和after。

动态代理

1.因为是动态的 Object Source

2.返回一个代理后的对象 自建方法返回Object对象 Proxy.newProxyInstance(当前对象的类加载器,当前对象接口,this(即当前对象));

3.在invoke对方法进行修饰