Java 泛型类型映射的引用<;K、 C>;应该参数化

Java 泛型类型映射的引用<;K、 C>;应该参数化,java,eclipse,Java,Eclipse,抽象类中有以下抽象方法定义: public abstract Map<String, String> aMethod(aType type); 公共抽象地图法(aType-type); 我无法在Eclipse中防止此警告: 对泛型类型映射的引用应参数化 我一直在四处寻找,似乎无法解决这个问题。我发现其他人也有同样的错误,但在他们的案例中,这似乎是有道理的。在我看来,我看不出逻辑 我可以抑制警告,但我想在实施解决方案之前了解出了什么问题 谢谢。您的地图已经参数化,因此警告没有意义。

抽象类中有以下抽象方法定义:

public abstract Map<String, String> aMethod(aType type);
公共抽象地图法(aType-type);
我无法在Eclipse中防止此警告:

对泛型类型映射的引用应参数化

我一直在四处寻找,似乎无法解决这个问题。我发现其他人也有同样的错误,但在他们的案例中,这似乎是有道理的。在我看来,我看不出逻辑

我可以抑制警告,但我想在实施解决方案之前了解出了什么问题


谢谢。

您的
地图已经参数化,因此警告没有意义。请尝试清理您的项目。

您确定该错误是文件的最新错误吗

这将在没有警告的情况下编译:

import java.util.Map;
class aType {}

public abstract class Main {
    public abstract Map<String, String> aMethod(aType type);
}

此警告可能是由以下原因引起的

public Map aMethod(aType type);
与此不同的是:

public Map<String, String> aMethod(aType type);
公共地图方法(aType类型);

后者创建了一个映射,您只能将字符串放入其中,但可以确保在请求值时始终获得字符串。前者使您能够将所有内容都放在其中,但您无法确定从映射中获取值时会得到什么。

Eclipse有一个习惯,即不知道您何时修复了类似的内容。尝试重建/编译项目,警告可能会消失。清理修复了它;谢谢下次遇到类似问题时,我会记住这一点。
public Map<String, String> aMethod(aType type);