【发布时间】:2014-08-08 23:22:10
【问题描述】:
我正在尝试创建一种服务定位器类,其中有一个
Map<Integer, ? extends ISomething>
但我以后不能这样做
myMap.put(0x00, new SomethingImplementor())
当我收到Error:(18, 33) java: incompatible types: org.sample.SomethingImplementor cannot be converted to capture#1 of ? extends ISomething
我的班级结构如下:
public interface ISomething {
public void doSomething();
}
public class SomethingImplementor implements ISomething {
@Override public void doSomething() {...}
}
为什么我不能创建这个地图并将值放入其中?
【问题讨论】:
标签: java oop generics map compiler-errors