zoukankan      html  css  js  c++  java
  • 跟着Android学设计模式:代理(proxy)

    代理模式

    1.意图:为其它对象提供一种代理以控制对这个对象的訪问。

    2.适用性:

    远程代理;虚代理。保护代理;智能引用;

    Android源代码中用到了大量的代理设计模式。比方Context的设计,Binder的设计等。

    以下是Context的类图。以此说明代理设计模式的特点:

    代理设计模式的要点是。代理者实现了被代理的所有接口,所以他们应该有共同的功能接口。

    在本例中。ContextWarpper是一个包装类。它继承了context类。实现了其抽象函数。

    可是它把详细的实现动作托付给了其成员变量mBase所引用的Context来运行。而mBase的真实对象实际上是ContextIml。

    Activity,Service。Application都是ContextWarpper的子类。在实际编程中大量的操作都要借助Context来完毕,比方要通过Uri操作数据库,再比方要发送Intent。

    在分析源代码的时候,知道了Context的代理模式,能高速准确的定位代码运行的路径。


  • 相关阅读:
    Mat
    分治法-最近点对问题
    动态规划作业-最长公共子序列问题
    动态规划作业-多段图的最短路径问题
    OpenCV+VisualStudion2017配置
    R入门(二)-对象以及它们的模式和属性
    Big number
    R入门(一)
    Spring-aop
    Spring-ioc
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/5330184.html
Copyright © 2011-2022 走看看