泛型沒有多型
package com.pkushutong.genericity4;
/** * 多型的兩種形式
* 注:泛型沒有多型
* @author dell
* */
public class test01
//形參使用多型
public static void test(fruit f)
//返回型別使用多型
public static fruit test02()
}
萬用字元:? extends super
可以用來宣告型別及宣告方法引數上,不能用在宣告類上
?可以接受泛型的任意型別,只能接受和輸出不能修改(方法宣告時引數無法正確知道具體的型別,因此不能修改)
?extends:泛型上線 <=
?super:泛型下限 >=
package com.pkushutong.genericity4;
/** * ?表示型別不定,使用時確定型別
* ?的使用:宣告型別,宣告方法上,不能宣告類或使用時
* ?extends:小於等於上限,指定型別子類或自身
* ?super:大於等於下限,指定型別為自身或父類
* @author dell
* * @param */
public class student
public static void test(student<?> stu)
//?extends:小於等於上限,指定型別子類或自身
public static void test2(student<? extends fruit> tru)
//??super:大於等於下限,指定型別為自身或父類
public static void test3(student<? super fruit> tru)
}
泛型巢狀
宣告:巢狀使用泛型 a> a = new a>();
使用:從外到內,一層層拆分,稍微複雜一些,與呼叫沒有任何的關係,只是確定了型別而已
package com.pkushutong.genericity4;
public class bjpku
}
泛型與陣列
沒有泛型陣列,不能建立泛型陣列
可以只有宣告,可以使用?
a a1 = null;
a<?> a2 = new a<?>[10];
jdk7泛型改進
jdk7改進:宣告時指定泛型即可,建立物件不用再次編寫型別
如 aa = new a<>();
認識泛型02 自定義含有泛型類與泛型方法
定義乙個含有泛型的類,模擬arraylist集合 package com.generic 定義乙個含有泛型的類,模擬arraylist集合 泛型是乙個未知的資料型別,我們不確定什麼資料型別的時候,可以使用泛型 泛型可以接收任意的資料型別,可以使用integer,string,student.建立物件...
java自定義泛型和反射泛型介紹
泛型必須先定義再使用 在方法中使用泛型 public void aa t t public class demo1 public void bb t t 類上宣告的泛型,只對非靜態成員有效,所以在靜態方法中需要自己宣告泛型 public static void cc t t 這裡以hibernate...
自定義類使用泛型and方法使用泛型
使用泛型的自定義類,泛型可以使用任意的資料型別,在建立物件的時候確定是什麼資料型別,建立物件的時候不使用泛型,那就預設是object型別 格式 package cn.zhuobo.day10.aboutgeneric public class classgeneric public classgen...