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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 夏的四季 于 2014-8-6 13:01 编辑
  1.         public static void MyProxy2(){
  2.                 Proxy.newProxyInstance(
  3.                                 Collection.class.getClassLoader(),
  4.                                 Collection.class,
  5.                                 new InvokeHandler() {
  6.                                                                                 
  7.                                         @Override
  8.                                         public OutputStream _invoke(String method, InputStream input,
  9.                                                         ResponseHandler handler) throws SystemException {
  10.                                                 // TODO Auto-generated method stub
  11.                                                 return null;
  12.                                         }                                
  13.                                 }
  14.                                 
  15.                                 );
  16.         }

复制代码
在第二行老有一个小红叉

7 个回复

倒序浏览
第二个参数是:被代理类实现的全部接口.
target.getClass().getInterfaces()
回复 使用道具 举报
newProxyInstance方法传入的第二个参数不对,应该是接口数组,将Collection.class改成new Class[]{Collection.class}
回复 使用道具 举报 1 0
shen7518 发表于 2014-8-6 12:25
newProxyInstance方法传入的第二个参数不对,应该是接口数组,将Collection.class改成new Class[]{Collecti ...
  1.         public static void MyProxy2(){
  2.                 Proxy.newProxyInstance(
  3.                                 Collection.class.getClassLoader(),
  4.                         //        Collection.class
  5.                                 new Class[]{Collection.class}
  6.                                 //Target.getClass().getInterfaces()
  7.                                  ,
  8.                                 new InvokeHandler() {
  9.                                                                                
  10.                                         @Override
  11.                                         public OutputStream _invoke(String method, InputStream input,
  12.                                                         ResponseHandler handler) throws SystemException {
  13.                                                 // TODO Auto-generated method stub
  14.                                                 return null;
  15.                                         }                               
  16.                                 }
  17.                                
  18.                                 );
  19.         }
复制代码

还是有红叉啊 怎么弄啊  是不是我的eclipse出问题了,可别的美问题 就这行代码有问题   好人做到底  帮我放上去看看吧  已经研究了好几天了,这马上就面试了 还没解决了这个问题:'(
回复 使用道具 举报
夏的四季 发表于 2014-8-6 12:47
还是有红叉啊 怎么弄啊  是不是我的eclipse出问题了,可别的美问题 就这行代码有问题   好人做到底  帮 ...

你的第三个参数的接口名也写错了,。。。。修改如下
   public static void MyProxy2(){
        Proxy.newProxyInstance(
                        Collection.class.getClassLoader(),
                //        Collection.class
                        new Class[]{Collection.class}
                        //Target.getClass().getInterfaces()
                         ,
                        new InvocationHandler() {

                                                        @Override
                                                        public Object invoke(Object proxy, Method method,
                                                                        Object[] args) throws Throwable {
                                                               
                                                                return null;
                                                        }
                                                                        
                                                      
                        }
                        
                        );
回复 使用道具 举报 1 0
第二行要的应该是一个接口
可以获取接口或者new 一个CLASS数组里面匿名接口
回复 使用道具 举报
shen7518 发表于 2014-8-6 12:55
你的第三个参数的接口名也写错了,。。。。修改如下
   public static void MyProxy2(){
        Proxy.n ...

太太太感谢了
回复 使用道具 举报

不客气。。。。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马