我无法理解以下程序的
输出.
public class Confusing {
private Confusing(Object o) {
System.out.println("Object");
}
private Confusing(double[] dArray) {
System.out.println("double array");
}
public static void main(String[] args) {
new Confusing(null);
}
}
正确的输出是“double array”.为什么这个构造函数被选择为比另一个更具体,当两者都可以接受null?