当我运行此代码时,它会打印String
. 我的问题是为什么没有编译时错误?Object 和 String 的默认值为 null。那为什么编译器不说Reference to method1 is ambiguous
。
public class Test11
{
public static void method1(Object obj) {
System.out.println("Object");
}
public static void method1(String str) {
System.out.println("String");
}
public static void main(String[] arr ) {
method1(null);
}
}