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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© yting_xmei1129 中级黑马   /  2013-9-21 11:17  /  1064 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

public void reflectMain() throws Exception{
                Class class4 = Class.forName("yting.day01.reflect.TestClass");
                Method me4 = class4.getMethod("main",String[].class);
                //me4.invoke(null,new Object[]{new String[]{"aaa","bbb"}});   //处理方式一
                me4.invoke(null,(Object)new String[]{"aaa","bbb"});   //处理方式二
                /*
                 * 这里千万要注意,public static void main(String[] args){}这个方法里面的参数是一个数组(数组的参数,注意注意),但是如果
                 * 直接传递new String[]{"aaa","bbb"}这样的东西进去的话,会被看作是两个数组,会抱参数个数错误的异常,有两种处理方式,
                 * 处理方式一:   new Object[]{new String[]{"aaa","bbb"}}
                 * 处理方式二:   (Object)new String[]{"aaa","bbb"}
                 */
        }

这是自己写过的源代码、、、希望可以帮到也出了同样问题的朋友、、、

1 个回复

倒序浏览
沙发,学习了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马