- 博客(3)
- 收藏
- 关注
原创 JVM之java的基本类型(二)
JVM之java的基本类型(二)java基本类型的大小java虚拟机每调用一个方法,就会创造一个栈帧,我们这里只讨论解释器使用的解释栈帧。这种栈帧有主要的两个组成部分,分别是局部变量区以及字节码的操作数栈。这里的局部变量是广义的局部变量,除了我们普遍意义外的局部变量,还包括了实例方法的this指针以及方法接受的参数。在java的虚拟机规定中,局部变量区等价于一个数组,并且可以使用正整数来索引,除了long和double值需要用两个数组单元来存储之外,其他基本类型以及引用类型的值均占一个数组单元。也就是
2021-04-14 19:22:29 97
原创 JVM之java的基本类型(一)
JVM之java的基本类型boolean类型在java的语言规范中,boolean类型的值只有两种可能,分别用true和false来表示,但是显然,这两种类型无法被JVM直接使用的。在java的虚拟机规范中,boolean类型被映射成int类型,具体的来说,true被映射成1,false被映射成0。这样一来,在编译成的class文件中,就看不出boolean类型的痕迹了。换言之,对于java虚拟机来说,如果把字节码中的boolean类型的局部变量赋值为0和1之外的也是合法的。那么问题来了,当我们修改字
2021-04-11 21:59:46 154
原创 数据结构之堆
数据结构之堆什么是堆堆就是一种特殊的树,只要满足如下两点,他就是堆1、堆是一个完全二叉树2、堆中每一个节点的值都必须大于等于(或小于等于)其子树中每个节点的值什么是完全二叉树,完全二叉树要求除了最后一层,每一层的节点都必须是满的,且最后一层的节点都靠左排列。对于每个节点的值都大于等于其子树中每个节点的值的堆,我们称之为大顶堆,对于每个节点的值都小于等于子树中每个节点的值,我们称之为小顶堆。如何实现一个堆完全二叉树比较适合用数组来存储,我们不需要存储左右节点的指针,单纯通过数组的下标就可以找到
2021-04-05 22:20:29 99
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人