String 关于字符串功能

String 关于字符串功能,string,String,我在发展下面的课程 public class Test1 { public void method(Object o) { System.out.println("Object Verion"); } public void method(String s) { System.out.println("String Version"); } public static void main(Str

我在发展下面的课程

public class Test1 
{
    public void method(Object o)
    {
        System.out.println("Object Verion");
    }   
    public void method(String s)
    {
        System.out.println("String Version");
    }



    public static void main(String args[])
    {
        Test1 question = new Test1();
        //question.method(question);

        question.method(null);
    }

}

现在,在执行时,它将调用字符串版本作为输出,因此请告知此处字符串被视为null,我们应该传递什么来调用对象版本。提前感谢所有其他条件相同,将调用最具体的方法。

来自:

如果多个成员方法可访问且适用于 方法调用时,必须选择一个来提供 运行时方法分派的描述符。Java编程 语言使用的规则是选择最具体的方法

非正式的直觉是,一种方法比另一种方法更具体 如果可以传递第一个方法处理的任何调用,则另一个 在没有编译时类型错误的情况下打开另一个


question.method(null)
可能意味着
字符串
对象
重载,但由于
字符串
对象
更具体(更窄),因此调用的方法是
字符串
重载。

也得到了对象版本。。!!通过取消注释//question.method(问题);那么,这个问题解决了吗?@YosepKim..是的,伙计。。!