JAVA_代理_动态代理|JAVA_代理_动态代理 (jdk代理)

通过动态代理,可以动态的在内容中构建代理对象(在程序运行时运用反射机制动态创建)
使用动态代理,要求目标对象必须实现了接口
【JAVA_代理_动态代理|JAVA_代理_动态代理 (jdk代理)】1)定义接口
2)目标对象类实现接口
3)代理对象类实现InvocationHandler接口

public class XXX implements InvocationHandler{//目标对象 private Object target; @Override public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { // TODO Auto-generated method stubString name = method.getName(); if(name.equals("xianglong18")){ //调用目标对象方法 Object ret = method.invoke(this.target, args); System.out.println("增加的内容"); return ret; }else{ return method.invoke(this.target, args); } }//设置目标对象,返回代理对象 public Object bind(Object target){ this.target = target; return Proxy.newProxyInstance(target.getClass().getClassLoader(), //类加载器 target.getClass().getInterfaces(), //对象接口 this); }}

    推荐阅读