静态代理模式:
实际上使用的时候,某些接口的实现类满足不了条件,或者想改变少部分方法的实现.采用静态代理模式
静态代理实际上新实现一个接口, 但是这个类里面有一个 老的实现类的引用. 重写需要改变的方法, 不许改变的方法直接调用老的方法就好
动态代理模式:
如果采用静态代理发现相同的代码太多了. 可以该用动态代理代码 在invoke方法里面讲 共同代码写在哪里. 特殊的采用 :
if(Connection.class.isAssignableFrom(proxy.getClass()) && method.getName().equals("close")){ do 特殊的事情处理 }总体来说代理类 就是 增加一些功能 不改变原有代码. 或者提炼原有代码的公共点
时间: 2024-09-29 22:26:48