据我所知,Java对象包含对象标题,引用及其数据。
//jdk 1.7
public final class String{
private final char value[];
private int hash;
//...
}
对于new String("abc")
,如果我们考虑32位系统需要多少字节?
totleBytes =
8//String Object header
+4 //value reference
+4 //hash
+12 //char[] object header
+3*1//value[] data
做得对,还是错过了什么?