解決類型轉換的問題java
首先確認一點:ide
java並沒真正實現泛型,即意爲:在字節碼文件中,存儲的仍是原始類型。idea
可經過以下代碼進行驗證:spa
public class Test4 { public static void main(String[] args) { ArrayList<String> arrayList1=new ArrayList<String>(); arrayList1.add("abc"); ArrayList<Integer> arrayList2=new ArrayList<Integer>(); arrayList2.add(123); System.out.println(arrayList1.getClass()==arrayList2.getClass()); //輸出爲true } }
而後,咱們可推斷,Java的泛型實現方式:code
Java是在編譯器(好比經過idea進行泛型的檢查)這一層面進行控制,保證泛型的一致性,在編譯時,JVM會將泛型的類型擦除,因此存在字節碼文件中的仍然是原始類型(object)。
get