【问题标题】:Java ambiguous method name, despite different parameter typeJava 模棱两可的方法名称,尽管参数类型不同
【发布时间】:2018-05-02 05:26:36
【问题描述】:

我在尝试重载具有不同参数类型的方法时通过 Junit 测试收到此错误。

getGame 方法对于类型“”不明确

这里有两种方法

public Game getGame(Game x) {
    return null;    
}
public Game getGame(String p){
    return null;
}

【问题讨论】:

  • 您必须使用null 调用它。您必须将其投射到其中一个。很难理解为什么需要getGame(Game x)
  • 您能否提供出现此错误的junit代码。
  • 是的,我用 null 来称呼它。你说得对,我其实不需要超载只是想多了
  • 适当地转换 null。 (String) null 或 (Game) null 以消除错误。
  • 欢迎来到 StackOverflow。说“谢谢”的方式是对有用的 cmets 和答案进行投票,尤其是选择解决您问题的答案(单击复选标记)。此外,选择一个答案向每个人表明该问题有一个解决方案(在寻找问题以帮助解决时)。

标签: java junit overloading


【解决方案1】:

如果您使用 null 调用,您可以将其强制转换或将其分配给变量:

选角:

getGame((Game) null);

赋值给一个变量:

Game game = null;
getGame(game);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-09-26
    • 2015-03-08
    • 2011-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多