美文网首页
java对象的创建过程是什么

java对象的创建过程是什么

作者: 小人物不说大话 | 来源:发表于2020-06-29 18:02 被阅读0次

java对象的创建过程是什么

java对象的创建过程:

类加载检查-->分配内存-->初始化零值-->设置对象头-->执行init方法

具体如下:

1、类加载检查

虚拟机遇到一条new指令时,先检查这个指令的参数能否在常量池中定位到一个类的符号引用,并检查这个符号引用代表的类是否已被ji加载、解析和初始化过。如果没有,则先进行类的加载过程。

(视频教程推荐:java视频教程

2、分配内存

有两种方式:

(1)指针碰撞:假设Java堆中的内存是规整的,用过的内存在一边,空闲的在另一边,中间有一个指针作为分界点的指示器,所分配的内存就把那个指针向空闲那边挪动一段与对象大小相等的距离。

(2)空闲列表:如果Java堆中的内存不是规整的,虚拟机必须维护一个列表,记录哪些内存块可用的,分配时从列表中找到一块足够大的空间划分给对象,并更新列表的记录。

3、初始化零值

将分配到的内存空间都初始化为零值,如果用TLAB,则在TLAB分配时初始化为零值。

4、设置对象头

主要设置类的元数据信息、对象的哈希码、对象的GC分代年龄等信息。

5、执行init方法初始化。

推荐教程:java入门程序

相关文章

  • java对象的创建过程是什么

    java对象的创建过程是什么 java对象的创建过程: 类加载检查-->分配内存-->初始化零值-->设置对象头-...

  • 图解Java对象创建过程

    图解Java对象创建过程 java对象创建过程

  • Java创建对象的过程简介

    Java创建对象的过程 简单记录一下Java创建对象的过程,就是new一个对象的时候发生了哪些事情。Java程序执...

  • Java对象创建过程

    整体流程 虚拟机在收到一条new指令后,首先取检查这个指令的参数是否能够在常量池定位到类的符号引用,并且检查这个符...

  • java对象创建过程

    java对象创建的过程: (1)类加载检查: 虚拟机遇到一条 new 指令时,首先将去检查这个指令的参数是否能在常...

  • java创建对象过程

    java创建对象过程如图所示 类检查器 虚拟机遇到一条new指令的时候,首先将去检查这个指令的参数是否能在常量池中...

  • Java创建对象过程

    类检查器 虚拟机遇到一条new指令的时候,首先将去检查这个指令的参数是否能在常量池中定位到这个类的符号引用,并且检...

  • Java对象

    Java对象的内存布局?对象的访问?new对象的过程? 一、Java对象的内存布局 对象的创建过程就是在堆上分配实...

  • Java对象的创建过程

    总结下对象的创建过程,假如有个名称为Dog的类: Java解析器查找类路径,以定位Dog.class文件。即使没有...

  • Java对象创建的过程

    虚拟机在碰到一条 new(或getstatic,putstatic,invokestatic) 指令时,会先去常量...

网友评论

      本文标题:java对象的创建过程是什么

      本文链接:https://www.haomeiwen.com/subject/fvrafktx.html