泛型

1.jdk5中加入泛型,从而把程序运行时可能发生的问题,转变为编译时的问题

2.泛型是提供给javac编译器使用的,程序编译后生成的class文件中不带有泛型信息,从而不影响程序的执行效率。这个过程叫做插除。

3.可以利用反射向集合中加入不符合此集合要求的泛型类型,代码如下:

 3.1  List list = new ArrayList();

         list.add("asas");

         Method method = List.class.getMethod("add", Object.class);

        //在此处加入了不符合集合要求的数据

        method.invoke(list, new HashMap());

        System.out.println(list);

3.2  List list = new ArrayList();
List> objList = list;
        objList.add(new HashMap());
        System.out.println(objList);

4.

泛型_第1张图片

5.

泛型_第2张图片


6. 数组元素不能使用参数化类型

   List[] listArr = new ArrayList[10];

7.

泛型_第3张图片

8.

泛型_第4张图片

你可能感兴趣的:(java基础增强)