Java对象的内存模型

众所周知,函数调用在内存中是通过压栈,退栈实现的,而Java的方法调用则是在JVM栈中通过栈帧实现的,且所有的Java对象都只在堆上分配内存.那么一个Java对象在堆内存里到底长啥样呢?实际上,当一个对象在内存中被创建的时候,它只不过是一串0和1而已.编译器会维护一张表,这张表用来存储对象中的每一个成员变量所在位置的偏移量(offset).这样,通过查这张表,JVM就能知道每一个成员变量相对于其起
相关文章
相关标签/搜索