舉個簡單的例子:
對於集合類list,你知道可以往裡add object型的物件,也就是任何物件。但在未知環境裡,你只允許往裡add string型的物件,或者你需要在不轉型的情況下直接往出拿裡面的物件,那麼就可以用泛型。**如下:
list list1 = new arraylist(); // 此時可以list.add(object) list.add(string) 你可以放任意物件,但如果我只需要建立字串型的集合,那麼
listlist2 = new arraylist();
這樣,除string以外的型別就存不進去了,取的時候
string str1 = (string) list1.get(0); 需要轉型
string str2 = list2.get(0); 不需要轉型
另外,泛型還可用於方法,比如
public t getvalue(listlist)
還有一些其他的東西 比如等等這些用法。
哈哈。。。剛看到這個解釋很接地氣:一般集合裡才會用到泛型。比如說乙個物件 房子,什麼人都可以進去。但是這樣 房子《男人》 ,就只有男人才能進去了。這就是泛型。
C 泛型的簡單理解
泛型和繼承是提高程式可重用性的兩 寶。泛型的主要思想就是將演算法從資料結構中抽象出來,使得預定義的操作能夠作用於不同的資料型別,從而簡化整個程式設計模型。泛型 generic 是具有佔位符 型別引數 的類 結構 介面和方法,它與普通類的區別是多了乙個或多個表示類的佔位符,這些佔位符用尖括號括起來。從...
泛型的理解
泛型是編譯器層面上的而不是虛擬機器上的,虛擬機器上不存在泛型.x.可以使用泛型的有 類,介面和方法.泛型方法可以直接定義在普通類中 方法的如下 public t gett t t public static extends abc t gett t t 是必須存在的,可以限定返回值和引數tx.泛型在...
關於泛型,什麼是泛型,如何理解泛型
泛型是jdk5中引入的特性,它提供了編譯時型別安全檢測機制,該機制允許在編譯時檢測到非法的型別,就不至於在執行時出現轉換異常,它的本質是引數化型別 即以任何型別 t 作為引數,在使用時可以傳入型別t的具體值 t 也就是將型別由原來的具體型別用引數t表示 即型別引數化 然後在使用 呼叫時傳入具體的型別...