类型擦除

类型擦除:
Map<String,String> srcMap =new HashMap<String,String>();
Map tempMap = srcMap;
Map<String,Object> destMap = tempMap;
// 指定泛型为String
List<String> list1 = new ArrayList<>();
// 指定泛型为Integer
List<Integer> list2 = new ArrayList<>();
System.out.println(list1.getClass() == list2.getClass()); // true

上面的判断结果是true。代表了两个传入了不同泛型的List最终都编译成了ArrayList,成为了同一种类型,原来的泛型参数String和Integer被擦除掉了。这就是类型擦除的一个典型的例子。

posted @ 2024-07-23 20:42  cloudwas  阅读(1)  评论(0编辑  收藏  举报