Java 教程(泛型方法)

2021-09-12 23:46:57 字數 736 閱讀 8300

泛型方法是引入其自己的型別引數的方法,這類似於宣告泛型型別,但型別引數的範圍僅限於宣告它的方法,允許使用靜態和非靜態泛型方法,以及泛型類建構函式。

泛型方法的語法包括型別引數列表,在尖括號內,它出現在方法的返回型別之前,對於靜態泛型方法,型別引數部分必須出現在方法的返回型別之前。

util類包含乙個泛型方法compare,它比較兩個pair物件:

public class util 

}public class pair

public void setkey(k key)

public void setvalue(v value)

public k getkey()

public v getvalue()

}

呼叫此方法的完整語法如下:

pairp2 = new pair<>(2, "pear");

boolean same = util.compare(p1, p2);

該型別已明確提供,通常,這可以省略,編譯器將推斷所需的型別:

pairp2 = new pair<>(2, "pear");

boolean same = util.compare(p1, p2);

此功能稱為型別推斷,允許你將泛型方法作為普通方法呼叫,而無需在尖括號之間指定型別,本主題將在下一節「型別推斷」中進一步討論。

JAVA 泛型類和泛型方法(靜態方法泛型)

泛型類定義的泛型,在整個類中有效。如果被方法是用,那麼 泛型類的物件明確要操作的具體型別後,所有要操作的型別就已經固定了。為了讓不同的方法可以操作不同型別,而且型別還不確定。那麼 可以將泛型定義在方法上。泛型類class demo public void print t t class generi...

JAVA 泛型類和泛型方法(靜態方法泛型)

泛型類定義的泛型,在整個類中有效。如果被方法是用,那麼 泛型類的物件明確要操作的具體型別後,所有要操作的型別就已經固定了。為了讓不同的方法可以操作不同型別,而且型別還不確定。那麼 可以將泛型定義在方法上。泛型類class demo public void print t t class generi...

JAVA 泛型類,限制泛型和泛型方法

我在學習集合的時候對泛型還不太了解,只是覺得用了泛型之後能向自己的集合裡加入自己指定型別的物件,可以減少資料型別的轉換。那麼,脫離集合後,泛型到底該如何使用。今天碰巧看了一段關於泛型的講解,覺得泛型也沒有自己想象中那麼難,於是將自己的心得分享出來,希望能幫到有需要的人。泛型的知識點大概有 泛型類,限...