我正在尝试构建一个简单的工厂,在那里我得到一个扩展A
并返回它的新实例的类的类名。为此,我正在尝试构建类名到类对象的映射:
public abstract class A {
}
public class B extends A {
}
public class AFactory {
private Map<String, Class<? extends A>> classesMap =
new HashMap<String, Class<? extends A>>() {
{
add("B", B.class);
}
};
}
但是java不会除了调用add()(“ The method add(String, Class<B>) is undefined for the type new HashMap<String,Class<? extends A>>(){}
”)。
我究竟做错了什么?