java内存区域与内存溢出异常

一、对象的内存布局:

    1. 对象头(Header)

          包括两部分

  (1) 用于存储对象自身的运行时数据,如哈希码(HashCode)、GC分代年龄、锁状态标志、线程持有的锁、偏向线       程ID、偏向时间戳等

  (2) 类型指针,即对象指向它的类元数据的指针,虚拟机通过这个指
     针来确定这个对象是哪个类的实例。

    2.实例数据(Instance Data):对象真正存储的有效信息,也是在程序代码中所定义的各种类型的字段内容。

    3.对齐填充(Padding)

            

 二、OutOfMemoryError异常

     java内存区域与内存溢出异常

  三、java 虚拟机运行时的数据区

       java内存区域与内存溢出异常