title: JVM学习笔记——对象的创建过程
date: 2018/9/1 16:01:35
description: 最近开始着手JVM的学习,在这里把自己学习过程中的笔记分享出来,希望能帮到一些小伙伴,同时也是对自己的学习的一个梳理。
检查该类是否已经被加载、解析、初始化,没有则执行类加载。(详细类加载的过程稍后再做介绍)
规整的情况,使用过的内存放在一边,空闲的内存在另一边,中间以一个指针作为分界,分配时移动分界指针即可,这种分配方式称为“指针碰撞”(Bump the Pointer)。
非规整的情况,使用与空闲的内存相互交错,虚拟机需要维护一个记录空闲内存空间的列表,分配时从列表中寻找空间划分,这种分配方式称为“空闲列表”(Free List)。
为内存空间进行初始化为零值,设置各类变量的默认初始值。
对象头信息设置:GC分代年龄、对象的哈希码、是哪个对象的实例等等。
原文:https://www.cnblogs.com/qbzf-Blog/p/9570738.html