我现在有地图类实现了接口
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