1.概念
泛型就是引數化型別。泛型的好處是在編譯的時候檢查型別安全,並且所有的強制轉換都是自動和隱式的,提高**的重用率。
2.案例
1)先看下面案例
//不適用泛型程式設計
新增非需要型別時發現不了錯誤。
使用泛型程式設計如下
如果新增的物件型別錯誤,編譯器即可發現。指定容器要持有的物件型別,用編譯器來保證型別的正確性。
使用泛型的優點:大型應用時能顯著降低程式的複雜度;泛型為較大的優化帶來可能: 可以在編譯期發現該類錯誤,而且在取出元素時不需要再進行型別判斷,從而提高了程式的執行時效率。
2)泛型類
有兩個類如下,要構造兩個類的物件,並列印出各自的成員x。
public
class stringfoo
public string getx()
public
void setx(string x)
}public
class doublefoo
public double getx()
public
void setx(double x)
}
用泛型來實現
publicclass genericsfoo
public t getx()
public
void setx(t x)
}**實現:
public
class genericsfoodemo
}
3)泛型方法
是否擁有泛型方法,與其所在的類是否泛型沒有關係。要定義泛型方法,只需將泛型引數列表置於返回值前。
publicclass examplea
public
static
void main(string args)
}
使用泛型方法時,不必指明引數型別,編譯器會自己找出具體的型別。泛型方法除了定義不同,呼叫就像普通方法一樣。需要注意,乙個static方法,無法訪問泛型類的型別引數,所以,若要static方法需要使用泛型能力,必須使其成為泛型方法。
class genericsfoo,這樣類中的泛型t只能是collection介面的實現類,傳入非collection介面編譯會出錯。
class genericsfoo<? extends collection>,「?」代表未知型別(萬用字元),這個型別是實現collection介面。<? extends 型別》表示這個型別是某個型別的子型別。
Java之泛型程式設計
1.概念 泛型就是引數化型別。泛型的好處是在編譯的時候檢查型別安全,並且所有的強制轉換都是自動和隱式的,提高 的重用率。2.案例 1 先看下面案例 不適用泛型程式設計 list li new arraylist 使用泛型程式設計如下 使用泛型的優點 大型應用時能顯著降低程式的複雜度 泛型為較大的優化...
JAVA基礎之泛型程式設計
一 什麼是泛型?所謂的泛型是指 允許在定義類 介面 方法時使用型別引數,這個型別引數將在 宣告變數 建立物件 呼叫方法時動態地指定。泛型類相當於乙個模板,在編譯期無法確定具體的型別,只有在建立物件時候需要動態指定具體的型別。注意點 1 泛型不能用在靜態屬性上 2 泛型使用時要傳入具體的引用資料型別 ...
Java泛型程式設計
泛型程式設計的意義 編寫的 可以被很多不同型別的物件所重用。好處 出現編譯錯誤比類在執行時出現類的強制型別轉換異常要好得多。程式設計師的任務 出所用類的未來可能有的所有用途。1 定義簡單泛型類 public class paircatch throwable t block.throwas t ps...