我現在有地圖類實現了接口
class A {...}
interface B {...}
我想有是
HashMap<String, A implements B>
即一些等價的,即一個String
映射到的A
任何情況下實現B
。但是該語法不能編譯。有沒有辦法映射到實現接口的類?還需要注意的是A
不是通用的,所以我不能做這樣的事情
A<? implements B>
我現在有地圖類實現了接口
class A {...}
interface B {...}
我想有是
HashMap<String, A implements B>
即一些等價的,即一個String
映射到的A
任何情況下實現B
。但是該語法不能編譯。有沒有辦法映射到實現接口的類?還需要注意的是A
不是通用的,所以我不能做這樣的事情
A<? implements B>
有可能在一個通用的背景下進行,例如,在一個通用的方法:
public <T extends A & B> void method() {
Map<String, T> map = new HashMap<>();
}
不幸,我們不能將這些多重限制應用於通配符。
你的意思是'A'的任何子類實現'B'? –
聞起來像一種代碼味道。你確定你的班級設計是正確的嗎? – biziclop
@NicolasFilotto究竟是 – Sherz