我正在实现名为ClasspathDiscoverer的类,并具有两个带有签名的构造函数,如下所示。
public class ClasspathDiscoverer {
public ClasspathDiscoverer() {
}
public ClasspathDiscoverer(String[] paths) {
}
public ClasspathDiscoverer(URL[] urls) {
}
}
编译此命令会给我一个错误,如下所示,对于java为什么将字符串数组与URL数组混淆,我有点头绪。
对ClasspathDiscoverer的引用是模棱两可的,org.appops.scanner.ClasspathDiscoverer中的构造函数ClasspathDiscoverer(java.lang.String [])和org.appops.scanner.ClasspathDiscoverer中的构造函数ClasspathDiscoverer(java.net.URL [])匹配
有人可以帮我理解吗?
最佳答案
您的构造函数没有问题。问题是您在代码中其他地方初始化类对象。看起来您正在发送null
对象。无法预测您将使用哪个构造函数。
尝试以下方法:
String[] paths = null;
new ClasspathDiscoverer(paths);
关于java - 试图用String和URL数组作为参数实现两个构造函数会产生模棱两可的错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42455503/