- java内存中放了什么?
JVM的对象布局:
java堆,方法区,java栈,虚拟机栈,本地方法栈,程序计数器(PC),直接内存(NIO)
java的所有的对象实例和数组都要在堆上分配。 - 内存中方的对象是怎么管理的,是如何创建和销毁的?
java通过new关键字来触发对象的创建:
1) 常量池中定位一个泪的符号引用,并且检查这个泪是否一杯加载,解析,和初始化。
2)1中类的加载初始化,如果没有完成,则实施类的加载过程。
3)类加载完成后;
4) 对象的创建,虚拟机为类分配内存;
5)初始化,初始化为零值,设置元数据信息,对象的哈希码,对象的GC分代年龄。
对象的内存布局:
对象头 | 对象实例数据|对齐填充