对象创建的几个步骤

对象创建的几个步骤

一、先把要创建的对象的类信息加载进内存
二、在内存开辟空间
1. 如果内存是规整的,则使用指针碰撞
2. 如果不规整,则会维护一个空闲列表
内存是否规整根据具体的垃圾回收算法来决定。
三、开辟空间需要解决并发问题,在堆中创建对象的过程是非常频繁的。
JVM有一个TLAB(线程私有分配缓冲区),每个线程会在自己的这个区域里面创建对象,如果该区域已经满了或空间不够,才回去非该区域创建,这时会使用CAS失败重试。
四、为对象设置零值(默认值)
五、设置对象的头信息
六、执行init方法。

你可能感兴趣的:(面试,jvm,java,开发语言)