Skip to content

对象实例化专题

对象实例化:new 关键字的背后

对象实例化是 Java 程序中最常见的操作之一。但 new 关键字的背后,隐藏着一套复杂的流程:从字节码到内存分配,再到对象头的设置。

专题导航

这一专题包含三篇文章,从不同角度解析对象实例化:

  1. 对象实例化方式 —— 有哪些方式可以创建对象?
  2. 字节码视角:对象创建过程 —— new 关键字在字节码层面发生了什么?
  3. 对象内存布局与访问定位 —— 对象在堆里是怎么排列的?

学习路径

建议按顺序阅读:

对象实例化方式


字节码视角:对象创建过程


对象内存布局与访问定位


(回到堆章节的「对象分配」进一步理解)

核心关联

对象实例化与运行时数据区的关系:

  • :对象实例化在堆中分配
  • 方法区:对象的类型信息来自方法区
  • 虚拟机栈:栈帧的局部变量表持有对象的引用
  • 直接内存ByteBuffer.allocateDirect() 的对象在直接内存

基于 VitePress 构建