小编use*_*827的帖子

Java Bug使用varargs的模糊方法?

我有一个类有两个这样的方法:

public class Dummy{
  public void doIt(String arg1, File arg2, Writer... ctx){
    // Do something very important...
  }

  public void doIt(String arg1, Writer... ctx){
    // Do something else...
  }

  public static void main(String[] args){
    new Dummy().doIt("Test", null);
  }
}
Run Code Online (Sandbox Code Playgroud)

我希望,编译器会给出错误,因为方法调用是不明确的.而是调用第二种方法.

在我们的例子中,ambigous方法是从数据库方法和稍后添加的varargs生成的.现在我们不知道如何避免方法调用的问题,如示例中所示.

有没有其他人有这个问题,并有一个想法如何解决它?

java compiler-construction variadic-functions ambiguous

12
推荐指数
1
解决办法
402
查看次数