日期:2014-05-20  浏览次数:20628 次

有谁知道java中new string(“abc”)是调用了什么东西
string s=new string(“abc”)
是调用了
string(string)
还是调用了
string(char[]);
------最佳解决方案--------------------
当然是string(string)了,JVM回通过参数的类型来区分方法的。
方法重载后,调用时JVM回更具方法的参数个数和参数类型来选择调用哪个方法。
------其他解决方案--------------------
 String中其中的一个构造方法
String(String original) 
          初始化一个新创建的 String 对象,使其表示一个与参数相同的字符序列;换句话说,新创建的字符串是该参数字符串的副本。 

------其他解决方案--------------------
"abc"也是string对象
------其他解决方案--------------------
String s= new String("abd");
当然是string(string)了。
调用了基类String.class
的构造方法: public String(String original) {
        this.value = original.value;
        this.hash = original.hash;
    }