6-1 Java 通过反射了解集合泛型的本质

package com.imooc.reflect;

import java.lang.reflect.Method;
import java.util.ArrayList;
//6-1 Java 通过反射了解集合泛型的本质
public class MethodDemo4 {
    public static void main(String[] args) {

        ArrayList list = new ArrayList();
        ArrayList<String> list1 = new ArrayList<String>();
        list1.add("Hello");
//        list1.add(20);

        Class c1 = list.getClass();
        Class c2 = list1.getClass();
        System.out.println(c1==c2);

        //编译之后集合的泛型是去泛型化的
//        集合的泛型是为了防止输入错,只在编译时存在
        try {
            Method m = c2.getMethod("add",Object.class);
            m.invoke(list1,20);
            System.out.println(list1.size());
            System.out.println(list1);
        }catch(Exception e){
            e.printStackTrace();
        }
    }
}

猜你喜欢

转载自blog.csdn.net/u012687612/article/details/111240471
6-1