从静态代理到动态代理
代理模式 代理模式是非常常见的设计模式,在功能增强方面使用的特别明显,例如数据库连接池会使用代理连接代理真实的物理连接,以达到close只是归还到池中而不是真实关闭的效果。 模式介绍 代理模式可以说是特别容易上手的一个模式,因为现实生活中就有很多的代理,理解起来相对是比较容易的。 图片描述 代理类实现了和实现类一样的接口 代理类依赖实现类 调用其实使用的是代理对象 模式优点和缺点 优点 当对现有功能增强的时候不需要修改已经实现的部分,只需要写代理类即可,满足了开闭原则。 缺点 当接口发生变化的时候,不但实现类要改动,代理类也要跟着改动。例如新增和修改了接口,代理类作为接口的实现类,也需要实现这些。 java的动态代理 动态代理的出现解决了模式的缺点 动态代理的简易展示 class TestInvocationHanlder implements InvocationHandler{ ITest target; public TestInvocationHanlder(ITest target) { super(); this.target = target; } @Override p...