java泛型總結

2021-08-17 01:52:55 字數 1057 閱讀 1596

提高**的復用性

1.泛型類

package xinceshi;

class box

public t get()

}public class iotest

}

2.泛型函式
class util

}

呼叫的時候和呼叫普通函式一樣,不用加尖括號

3.邊界符

public static > int greaterthan(t array,t elem) 

} return count;

}

4.萬用字元

看一條**

boxbox1=new box();

box1.set(new integer(1));

這段**是完全沒有問題的,因為多型。那麼再看下面一種情況

我們改一下引數

public void set(boxt);
仍舊按照上面類似的方法來

boxbox1=new box();

boxbox2=new box();

box1.set(box2);

會出問題.儘管integer和number是繼承關係,但是box1和box2並沒有繼承關係,所以會出錯,但是我們可以修改萬用字元為

public void set(box<? extends t> t);
這樣就沒有問題了

類似的,有<? super t>

ps:用eclipse匯入list的時候一定要看清有沒有匯入錯誤:<

另外,可以用下面這種方法來對泛型進行限制

public t showkeyname(genericcontainer){

關於泛型的基本內容就到這裡

Java 泛型總結

泛型指引數化型別的能力,可以定義帶泛型型別的類或方法,隨後編譯器會用具體的型別來替換它。在泛型產生之前,像集合的訪問都是靠強制型別轉換 public class arraylist public void add object o string filename string names.get 0...

Java泛型總結

1 泛型主要是用來年解決資料型別安全的問題,用標識來代替屬性的型別或者返回值的型別 2 在使用泛型的時候可以有以下幾種形式 泛型介面 泛型類 萬用字元做泛型引數 泛型方法 泛型陣列 3 以下通過 說明 package com.sun.demo 一 定義泛型介面 inte ce father 二 定義...

java泛型總結

1.概念 泛型實現了引數化型別的概念,其最初的目的是希望類或方法能夠具備最廣泛的表達能力。通俗來說就是為了避免轉換出錯,限制資料型別。通過解耦類或者方法與所使用的型別之間的約束。list thelist1 new arraylist arrays.aslist 1,2,3,string for ob...