在Java中,泛型變量可以使用extends和super關鍵字來設置約束條件。這些約束條件有助于確保類型參數滿足特定的要求。
例如,假設我們有一個泛型類Box<T>
,我們希望T是Number
類型或其子類型(如Integer
、Double
等),可以這樣定義:
public class Box<T extends Number> {
// ...
}
例如,假設我們有一個泛型類Comparator<T>
,我們希望T是String
類型或其父類型,可以這樣定義:
public class Comparator<T super String> {
// ...
}
注意:在實際編程中,通常使用extends關鍵字來設置上界,而不是使用super關鍵字來設置下界。因為super關鍵字在某些情況下可能導致類型推斷的問題。