string s=new string(“abc”)
是调用了
string(string)
还是调用了
string(char[]);

解决方案 »

  1.   

    当然是string(string)了,JVM回通过参数的类型来区分方法的。
    方法重载后,调用时JVM回更具方法的参数个数和参数类型来选择调用哪个方法。
      

  2.   

     String中其中的一个构造方法
    String(String original) 
              初始化一个新创建的 String 对象,使其表示一个与参数相同的字符序列;换句话说,新创建的字符串是该参数字符串的副本。 
      

  3.   

    String s= new String("abd");
    当然是string(string)了。
    调用了基类String.class
    的构造方法: public String(String original) {
            this.value = original.value;
            this.hash = original.hash;
        }