java基础之--动态代理

代理模式

  代理模式是常用的JAVA设计模式,代理类主要负责为委托类预处理消息、过虑消息、转发给委托类、以及事后处理消息等。

  代理类和委托类之间通常会存在关联关系,一个代理类对象关联一个委托类对象,代理类对象不实现真下服务,而是调用委托类对象的相关方法。

按照代理类的创建时期,代理类可以分为两种:

  静态代理:由程序员自行创建,或特定工具自动生成代码,程序运行前,代理类的.class文件就已经存在了。

  动态代理:在程序运行时由程序通过反射机制动态创建。

代理模式的两种实现方式:

  JDK:以代理接口方式实现,代理类和委托类有共同的接口,代理类只负责代理实现了该接口的类。(只能对实现了接口的类进行代理)

  cglib:以继承方式实现,代理类是委托类的子类,并覆盖其中方法实现增强。(不能对final类进行代理)

posted on 2016-05-13 14:31  Junqiang  阅读(168)  评论(0编辑  收藏  举报

导航