JVM
文章平均质量分 78
JinzhouZ
学习!进步!成长!
Github地址 https://github.com/JoejZhang
展开
-
Class类文件的结构
Class类文件就是java文件通过编译之后产生的文件,了解Class类文件的结构对Java虚拟机的学习是不可或缺的。它有助于我们对许多JVM的知识更方便理解,例如类加载机制、对象的创建、方法区区域的内容等会有更好的体会。 注意:任意一个Class文件都对应着唯一一个类或接口的定义信息,但反过来说,类或接口并不一定都得定义在文件里(譬如类或接口也可以通过类加载起直接生成) Class类原创 2018-01-24 23:58:24 · 216 阅读 · 0 评论 -
Java的内存区域(堆、栈)
一提到Java的内存区域大家第一时间想到的可能就是堆和栈,堆用来存放对象,栈用来存储方法执行时的局部变量等。但是Java的内存并不只是分为这两块。比如说,类加载之后的类信息、常量、静态变量、即时编译器编译后的代码等数据,是存放在一个叫方法区的地方。 运行时数据区域 一个进程对应一个Java虚拟机,Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。根据《J原创 2018-01-19 11:41:46 · 304 阅读 · 0 评论 -
对象的创建及内存分布
下面简单总结一下对象的创建及其内存分布(以下只讨论普通Java对象,不包括数组和Class对象) 1.了解对象的内存分布 对象内存分配在堆中(绝大部分普通Java对象,像Class对象是分配在方法区中的) 对象开始的部分是对象头,包括两部分信息 第一部分是自身运行时数据,存放了跟对象有关的信息,如哈希码、GC分代年龄、锁状态标志、线程持有的锁、偏向线程ID、偏向时间戳等 第二部原创 2018-01-20 23:02:56 · 917 阅读 · 0 评论