关于代理模式的个人理解

 

静态代理模式:

  实际上使用的时候,某些接口的实现类满足不了条件,或者想改变少部分方法的实现.采用静态代理模式

      静态代理实际上新实现一个接口, 但是这个类里面有一个 老的实现类的引用. 重写需要改变的方法, 不许改变的方法直接调用老的方法就好

 

动态代理模式:

  如果采用静态代理发现相同的代码太多了. 可以该用动态代理代码 在invoke方法里面讲 共同代码写在哪里. 特殊的采用 :

  if(Connection.class.isAssignableFrom(proxy.getClass()) && method.getName().equals("close")){
   do 特殊的事情处理
}
总体来说代理类 就是 增加一些功能 不改变原有代码. 或者提炼原有代码的公共点
posted @ 2017-09-13 18:38  郝二驴  阅读(153)  评论(0编辑  收藏  举报