问题描述
public class Confusing {
public Confusing(Object o) {
System.out.println("Object");
}
public Confusing(double[] dArray) {
System.out.println("double array");
}
public static void main(String args[]) {
new Confusing(null);
}
}
以上程序输出内容是?
(a) Object
(b) double array
(c) 以上都不是
注:每期的「小马哥每日一问」将累计在「小马哥技术周报」 直播中解答
这里应该是most specific 原则吧,所有
double[]
类型参数都可以是Object
,但不是所有Object
都是double[]
。所以在这里Confusing(double[] dArray)
更加 specific。选b
。最后给小马哥打call。B站上有关注小马哥的技术周报。