一、什麼是泛型?
所謂的泛型是指 允許在定義類、介面、方法時使用型別引數,這個型別引數將在 宣告變數、建立物件、呼叫方法時動態地指定。
泛型類相當於乙個模板,在編譯期無法確定具體的型別,只有在建立物件時候需要動態指定具體的型別。
注意點:
1、泛型不能用在靜態屬性上
2、泛型使用時要傳入具體的引用資料型別 不能是基本資料型別
二、自定義泛型類、泛型介面、泛型方法
① 自定義泛型類
泛型字母:一般情況是大寫字母,常見的泛型字母:
t----type
e----element
k----key
v----value
public class location
public location()
public t getx()
public void setx(t x)
public t gety()
public void sety(t y)
@override
public string tostring() }
public class geneicdemo
}
② 自定義泛型介面
public class mycomparable
③ 自定義泛型方法
泛型字母放在方法的訪問修飾符後,返回型別之前
public class genericmethod
public static void main(string args)
private void test_2(t...t)
}}
三、泛型萬用字元
1、?:表示不確定的型別
只能用在變數的宣告上(包括方法的形參)
不能用在例項化的過程中 不能用在建立泛型類/介面/方法上
2、泛型的上限
設定型別萬用字元的上限<? extends classname> classname 是萬用字元'?'的上限 表示<=
1、一般用於限制某個操作
2、不能使用在新增資料 一般都是對資料的讀取
3、泛型的下限
設定型別萬用字元的下限<? super classname> classname 是萬用字元'?'的下限 表示》=
public class wildcardsdemo01
}class people
class chinese extends people
class american extends people
class cxswpeople extends people
Java之泛型程式設計
1.概念 泛型就是引數化型別。泛型的好處是在編譯的時候檢查型別安全,並且所有的強制轉換都是自動和隱式的,提高 的重用率。2.案例 1 先看下面案例 不適用泛型程式設計 list li new arraylist 使用泛型程式設計如下 使用泛型的優點 大型應用時能顯著降低程式的複雜度 泛型為較大的優化...
Java之泛型程式設計
1.概念 泛型就是引數化型別。泛型的好處是在編譯的時候檢查型別安全,並且所有的強制轉換都是自動和隱式的,提高 的重用率。2.案例 1 先看下面案例 不適用泛型程式設計 新增非需要型別時發現不了錯誤。使用泛型程式設計如下 如果新增的物件型別錯誤,編譯器即可發現。指定容器要持有的物件型別,用編譯器來保證...
java基礎之泛型詳解
public class a public t get 當使用者建立a類物件時,就會給a類的型別變數t賦值。如new a 這說明a類中所有的t都會被string替換。public class a public string get 泛型類說明這個類有型別變數,在建立這個類物件時需要給型別變數賦值。泛...