美文网首页
设计模式 - 代理模式Proxy

设计模式 - 代理模式Proxy

作者: 热血沸腾 | 来源:发表于2017-01-20 16:10 被阅读40次

    核心:  客户端与执行者之间加一层代理

    本质:控制对象访问

    因此,  代理对象 可以在中间做很多事情

    根据代理做了不同事情,大伙给他们起了一些名字

    远程代理: Java中RMI技术  一个对象在多个不同地址上

    虚代理:创建资源消耗特别大的对象之前的处理,例如用户信息只需要返回名称,但是次次返回一个大的完整对象,这就没有必要

    Android中压缩图片那块儿

    BitmapFactory.Options newOpts =newBitmapFactory.Options();

    // 开始读入图片,此时把options.inJustDecodeBounds 设回true,即只读边不读内容

    newOpts.inJustDecodeBounds =true;

    这里一定用到了虚代理

    保护代理:访问对象前加上权限

    智能牵引代理: 在代理对象操作真实对象的前后做一些附加动作

    代理实现主要角色

    接口 Subject 

    实际对象 RealSubject实现接口

    代理对象Proxy 实现接口,并持有RealSubject的引用

    什么是静态代理和动态代理

    静态代理是指的我们自己实现的

    动态代理指的是Java内建的,在java.lang.reflect 包下有两个 Proxy 和InvocationHandler ,代理对象必须实现InvocationHandler接口

    动态代理的好处是每次接口变化,代理对象不用变化

    还有一种代理实现方式,就是继承实现,去掉了接口。

    完结

    相关文章

      网友评论

          本文标题:设计模式 - 代理模式Proxy

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