Java new关键字的对象内存分配原理

一、new操作符

  new操作符用来实例化对象并返回该对象引用。

  Java中new创建对象分为三步:

    1. 声明对象引用。
    2. 实例化对象:Java中实例化对象就是创建一个Java对象,即分配内存并返回指向该内存的引用。
    3. 初始化对象实例:调用构造函数,为类的实例对象赋值。

   Java对象内存布局:

 

 

  对象头(Object Header):包括了关于堆对象布局、类型、GC状态、同步状态和标识哈希码的基本信息,Java对象和VM内部对象有一个相同的对象头格式。

  实例数据(Instance Data):用于存储数据信息,包括:父类信息、对象属性信息。

  对齐填充(Padding):为了字节对齐填充的数据,非必须。

 

posted @ 2021-10-12 18:49  naray  阅读(674)  评论(0编辑  收藏  举报