黑马程序员技术交流社区

标题: 有关泛型的擦除和反射的问题 [打印本页]

作者: 微微微笑    时间: 2014-10-24 16:32
标题: 有关泛型的擦除和反射的问题
为什么可以向Integer型的ArrayList中加入String类型,而不可以向String类型的ArrayList中加入Integer
package com.itheexam;

import java.lang.reflect.Method;
import java.util.ArrayList;

public class Test4 {

        public static void main(String[] args) throws Exception, NoSuchMethodException {
                // TODO Auto-generated method stub
                /*
                 * Integer的ArrayList可以通过反射,向里面加入String类型数据
                ArrayList<Integer> list=new ArrayList<Integer>();
                Method method=list.getClass().getMethod("add", Object.class);
                method.invoke(list, "abc");
                System.out.println(list.get(0));
                */
                //但这段代码会出错
                ArrayList<String> list=new ArrayList<String>();
                Method method=list.getClass().getMethod("add", Object.class);
                method.invoke(list, 1);
                System.out.println(list.get(0));
               

        }

}

作者: 郑飞    时间: 2014-10-25 12:41
之前也遇到过 以为自己写错了 没怎么在意 还好你现在提出来了 坐等高人指点




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