我正在Tutorials Point上学习Java。那里copyValueOf
方法的语法如下。
public static String copyValueOf(char[] data)
它说这个方法是静态的,这意味着它必须使用类名调用。 但是在这里,程序被针对对象调用时仍然可以正常工作,为什么会这样呢?
public class Test {
public static void main(String args[]) {
char[] Str1 = {'h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd'};
String Str2 = "";
Str2 = Str2.copyValueOf( Str1 );
System.out.println("Returned String: " + Str2);
}
}
此外,我觉得将上述的第4行和第5行替换为此内容是多余的。
String Str2 = new String(Str1);
所以,请告诉我它到底有什么用处。