java虚拟机知识点有哪些

发布时间:2021-11-18 10:05:12 作者:iii
来源:亿速云 阅读:145

这篇文章主要讲解了“java虚拟机知识点有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“java虚拟机知识点有哪些”吧!

1. java 虚拟机结构

java虚拟机知识点有哪些

2. 整数在java虚拟机中的表示

整数在java虚拟机中以补码的形式保存,

在java中,可以使用位运算查看整数中每一位的实际值,代码如下:

// 打印 -10 在虚拟机内的实际表示
public static void main(String[] args) {
    int a = -10;
    for(int i = 0; i < 32; i++) {
        int t = (a & 0x8000_0000 >>> i) >>> (31 - i);
        System.out.print(t);
    }
}

这段程序的基本思想是,进行32次循环,每次循环取出int值中的一位,第3行的 0x8000_0000 是一个首位为1,其余位为0的整数,通过右移i位,定位到要获取的第i位,并将除该位外的其他位统一设置为0,而该位不变,最近将该位移至最右,并进行输出。

使用补码的好处

3. 浮点数在java虚拟机中的表示

在java虚拟机中,浮点数有floatdouble两种,分别是32位和64位浮点数。浮点数在java虚拟机中表示比整数略显复杂。目前使用最为广泛的是由 IEEE 754 定义的浮点数格式。

IEEE 754的定义中,一个浮点数由3部分组成:符号位、指数位 和 尾数位。以32位float类型为例,符号位占1位,表示正负数,指数位占8位,尾数为点剩余23位。

java虚拟机知识点有哪些

在java中,使用Float.floatToRawIntBits()函数可以获得一个单精度浮点数的 IEEE 754 表示,如下:

public static void main(String[] args) {
    float a = -5;
    System.out.println(Integer.toBinaryString(Float.floatToIntBits(a)));
}

感谢各位的阅读,以上就是“java虚拟机知识点有哪些”的内容了,经过本文的学习后,相信大家对java虚拟机知识点有哪些这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

推荐阅读:
  1. Java虚拟机问题有哪些
  2. javaSE知识点有哪些

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

java

上一篇:Hbase中Phoenix如何安装部署

下一篇:CDP安装SMM服务启动异常怎么办

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》