设计模式(三):代理模式之JDK动态代理(JDK Dynamic Proxy)

JDK 1.3 版本后,Java提供了动态代理技术,允许应用在运行期创建接口的代理对象。

JDK 提供的代理只能针对接口做代理。也有更强大的代理库 cglib,可以实现对类的代理。

JDK 的 java.lang.reflect包下提供了一个Proxy类和一个InvocationHandler接口,Proxy类利用InvocationHandler动态创建一个符合某一接口的代理,生成(运行时)目标类的代理对象。

在普通编程过程中,无须使用动态代理,但在编写框架或底层基础代码时,动态代理的作用就非常大。

阅读更多