JVM

JVM从0到1-class文件常量池

2020-03-14
常量池可以比喻为class文件里的资源仓库,他是class文件结构中与其他项目关联最多的数据,通常也是占据class文件空间最大的项目。 由于常量池中的常量的数量是不固定的,所以在入口处需要防止一个u2类型的数据,代表常量池容量计数器。需要...
Read more

JVM从0到1-class文件结构初探

2020-03-14
class文件是一组以8个字节为基础单位的二进制流,各个数据项紧凑排列,没有任何分隔符,当遇到需要占用8个字节以上空间的数据项时,会采用大端原则进行排列,即高位在前。 class文件采用了一种类似C语言结构体的伪结构来存储数据,这个伪结构...
Read more

JVM从0到1-内存划分

2020-03-13
jvm运行时会把内存分为多个数据区域,根据《java虚拟机规范》规定,可以划分为方法区,堆,虚拟机栈,本地方法栈和程序计数器,其中方法区和堆是所有线程所共享的,其他则是每个线程隔离的。 程序计数器 其中记录的是当前所执行的字节码的行号,字...
Read more