首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件开发 >

动态署理(JAVA设计模式)

2013-03-26 
动态代理(JAVA设计模式)静态代理只能对实现指定接口的类进行代理,当我想为多个接口中的多个方法前后添加逻

动态代理(JAVA设计模式)

静态代理只能对实现指定接口的类进行代理,当我想为多个接口中的多个方法前后添加逻辑的时候使用静态代理会变得十分麻烦。

动态代理可以满足我的要求。

使用JDK的动态代理十分简单。

需要用到的类有:

java.lang.reflect.InvocationHandler

java.lang.reflect.Proxy

java.lang.reflect.Method


public class Client {public static void main(String[] args) {Tank t = new Tank();LogHander h = new LogHander(t);               //传入:需要代理的类,实现的接口数组,自定义的需要添加的逻辑。               Moveable m = (Moveable) java.lang.reflect.Proxy.newProxyInstance(t.getClass().getClassLoader(), new Class[]{Moveable.class}, h);m.move();m.stop();}}


热点排行