轉載於:https://blog.csdn.net/u012760183/article/details/52092692
之前參加面試的時候遇到面試官問泛型的作用,只是說了大概自己的理解,
在此轉載記錄一下,加深印象
泛型好處:
泛型簡單易用
類型安全 泛型的主要目標是實現java的類型安全。 泛型可以使編譯器知道一個對象的限定類型是什么,這樣編譯器就可以在一個高的程度上驗證這個類型
消除了強制類型轉換 使得代碼可讀性好,減少了很多出錯的機會
Java語言引入泛型的好處是安全簡單。泛型的好處是在編譯的時候檢查類型安全,並且所有的強制轉換都是自動和隱式的,提高代碼的重用率。
泛型的實現原理
泛型的實現是靠類型擦除技術 類型擦除是在編譯期完成的 也就是在編譯期 編譯器會將泛型的類型參數都擦除成它的限定類型,如果沒有則擦除為object類型之后在獲取的時候再強制類型轉換為對應的類型。 在運行期間並沒有泛型的任何信息,因此也沒有優化。
泛型不考慮繼承
List 類型 是否 可以 賦值為 List類型 ?
答案是不可以的
雖然說在賦值之后 String類型可以當做 Object類型使用 但是還是會出現問題
假設如下代碼