A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 代文娟 中级黑马   /  2013-11-22 19:00  /  831 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. Class classProxy=Proxy.getProxyClass(Collection.class.getClassLoader(), Collection.class);
  2. Constructor constructor = classProxy.getConstructor(InvocationHandler.class);       
  3. Collection conllection=(Collection) constructor.newInstance(new InvocationHandler(){
  4.    ArrayList al=new ArrayList();
  5.         @Override
  6. public Object invoke(Object proxy, Method method, Object[] args)
  7.                 throws Throwable {
  8.                 Object value=method.invoke(al, args);
  9.                 return value;
  10.                         }       
  11.                 });
  12. conllection.add("aaaa");
  13. conllection.add("bbbb");
  14. conllection.add("cccc");
复制代码
在张孝祥老师讲的动态代理中为什么这句话conllection.add("aaaa");一执行就会调用 invoke(Object proxy, Method method, Object[] args)呢?怎么把conllection给proxy,把add给method,把“aaa”给args的呢?是怎么过去的呢?

评分

参与人数 1技术分 +1 收起 理由
To + 1 我来给你圆满

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马