黑马程序员技术交流社区

标题: 反射数组方法 [打印本页]

作者: 沈雷    时间: 2011-8-4 16:17
标题: 反射数组方法
[code=java]import java.lang.reflect.Method;

import org.junit.Test;

public class People {
        public void printNum1 ( String[] nums){
                for(String num : nums){
                        System.out.println(num);
                }
               
        }
        public void printNum2 ( int[] nums){
                for(int num : nums){
                        System.out.println(num);
                }
               
        }
        @Test
        public void test1() throws Exception{
                Class clazz = People.class;
                Method method = clazz.getMethod("printNum1", String[].class);
                method.invoke(new People(), new String[]{"hello","word"});
        }
        @Test
        public void test2() throws Exception{
                Class clazz = People.class;
                Method method = clazz.getMethod("printNum2", int[].class);
                method.invoke(new People(), new int[]{1,2});
        }

}[/code]questions:test1有问题,test2正常。这是为什么?
[ 本帖最后由 沈雷 于 2011-08-04  16:22 编辑 ]
作者: 匿名    时间: 2011-8-4 16:28
[code]Method method = clazz.getMethod("printNum", String[].class);[/code][color=Red]printNum[/color] 方法需要传递整形数组,你传字符串数组了。。。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2