new String 和 toString
首先 toString是Object类的方法
String类继承了toString方法并进行了重写
/**
* This object (which is already a string!) is itself returned.
这个对象已经是个字符串 返回它本身
*
* @return the string itself.
*/
public String toString() {
return this;
}
jdk1.8源码分析 String类型的toString()就是返回自己本身所以下边的代码会输出s的值
String s="s";
System.out.println(s);
其他的类一般都没有重写object()类的toString()方法所以使用的是object类本身的toString如下所示
* @return a string representation of the object.
*/
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}
object类的toString()返回的是类名+@+此对象的hashcode值的无符号16进制的字符串
String s=newString()
new String(byte bytes[])是根据parameter是一个字节数组,使用java虚拟机默认的编码格式,将这个字节数组decode为对应的字符。若虚拟机默认的编码格式是ISO-8859-1,按照ascii编码表即可得到字节对应的字符。