Java+泛型

泛型:
jdk1.5出現的安全機制。

好處:
1,將運行時期的問題ClassCastException轉到了編譯時期。
2,避免了強制轉換的麻煩。

<>:什麼時候用?當操作的引用數據類型不確定的時候。就使用<>。將要操作的引用數據類型傳入即可.
其實<>就是一個用於接收具體引用數據類型的參數範圍。

在程序中,只要用到了帶有<>的類或者接口,就要明確傳入的具體引用數據類型 。

泛型技術是給編譯器使用的技術,用於編譯時期。確保了類型的安全。

運行時,會將泛型去掉,生成的class文件中是不帶泛型的,這個稱爲泛型的擦除。
爲什麼擦除呢?因爲爲了兼容運行的類加載器。

泛型的補償:在運行時,通過獲取元素的類型進行轉換動作。不用使用者在強制轉換了。

泛型的通配符:? 未知類型。

泛型的限定:
? extends E: 接收E類型或者E的子類型對象。上限
一般存儲對象的時候用。比如 添加元素 addAll.

? super E: 接收E類型或者E的父類型對象。 下限。
一般取出對象的時候用。比如比較器。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章