如果出现多匹配的情况
一般编译器应该会从子类中优先选择
就像System.out.printlin一样,如果是String类的,就不会使用打印Object的方法.

解决方案 »

  1.   

    我觉得他一般是在JAVA中会把NULL当作字符处理,而后再当作对象处理,因为对象处理的速度比较慢。
      

  2.   

    好的object 是所有类的子类吧.是吗?不要笑我.......
    还有就是你的两个构造函数都是有参数的.而你创对 对象时却不给参数,,所以.....
      

  3.   

    class A extends Object{}
    class B extends A{}
    public class Test {
       public void myMethod(Object o) { 
           System.out.println("My Object"); 
       }
       public void myMethod(A s) { 
           System.out.println("My A"); 
       }
       public void myMethod(B m){
           System.out.println("My B"); 
       }
       public static void main(String args[]) { 
           Test t = new Test(); 
           t.myMethod(null); 
       }
    }输出结果
    My B
      

  4.   

    我觉得是JAVA中的一个内部错误处理机制。