2013-02-15 32 views
0

我有這需要可以抽象類被添加爲子類HashMap類

exampleMethod(Map<String, Number> exMap). 

我可以調用此方法與像整數或長號碼的子類的方法?因此,該方法類將是

A a = new A(); 
    a.exampleMethod(Map<"String, Integer"> intMap); 

感謝

+1

號必須在方法簽名轉換爲'exampleMethod(地圖<字符串?擴展號碼> exMap)'支持非正好是''編號'地圖值類型。 – cheeken 2013-02-15 00:49:15

+0

謝謝。這樣可行。 – javadee 2013-02-15 00:55:52

回答

7

沒有,爲了做到這一點,你需要的方法簽名是

exampleMethod(Map<String, ? extends Number> exMap) 
當然

,那麼你將不能夠添加任何值到地圖上,只需閱讀它們。

+0

謝謝,因爲它僅用於閱讀目的。 – javadee 2013-02-15 00:56:42

0

我同意jtahlborn的版本,另外,您也可以做到這一點作爲

<T extends Number> void exampleMethod(Map<String, T> exMap) { 
}