Java对象:动态类型不可见

时间:2015-12-15 13:25:05

标签: java dictionary compiler-errors

我有以下代码:

public class A implements B{
    private final Map<String, Map<String, Object>> processors = new ConcurrentHashMap<>();

...
@override(from B) 
public void doSomething() {
processors.putIfAbsent(new ConcurentHashMap<>()); ->compilation error
}

引发以下错误:

The method putIfAbsent() is undefined for the type Map<String,Map<String,object>

有人可以向我解释一下这个错误的原因是什么?

1 个答案:

答案 0 :(得分:1)

致电key时,您错过了putIfAbsent。您只是将value(即地图)作为参数传递。

另外:a是什么?尝试像

这样的东西
processors.putIfAbsent("a key", new ConcurrentHashMap<String, Object>());