当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:16:00  来源:本站整理

<b>Java虚拟机</b>[Java编程]

赞助商链接



  本文“<b>Java虚拟机</b>[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

1、 什么是Java虚拟机

Java虚拟机是一个想象中的机械,在实际的计算机上通过软件模拟来实现.Java虚拟机有自己想象中的硬件,如处理器、仓库、存放器等,还具有呼应的指令系统.

1.为什么要利用Java虚拟机?

Java语言的一个非常重要的特点就是与平台的无关性.而利用Java虚拟机是实现这一特点的关键.普通的高级语言假如要在差别的平台上运行, 至少需求编译成差别的目标代码.而引入Java语言虚拟机后,Java语言在差别平台上运行时不需求重新编译.

Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),便可以在多种平台上不加改正地运行.Java虚拟机在履行字节码时,把字节码注释成具体平台上的机械指令履行.

2.谁需求理解Java虚拟机

Java虚拟机是Java语言底层实现的底子,对Java语言感爱好的人都应对Java虚拟机有个大约的理解.这有助于理解Java语言的一些性质,也有助于利用Java语言.

关于要在特定平台上实现Java虚拟机的软件人员,Java语言的编译器作者以及要用硬件芯片实现Java虚拟机的人来说,则必须深化理解Java虚拟机的标准.

别的,假如你想扩大 Java语言,或是把别的语言编译成Java语言的字节码,你也需求深化地理解Java虚拟机.

3.Java虚拟机支持的数据范例

Java虚拟机支持Java语言的基本数据范比方下:

byte://1字节有标记整数的补码 short://2字节有标记整数的补码 int://4字节有标记整数的补码 long://8字节有标记整数的补码 float://4字节IEEE754单精度浮点数 double://8字节IEEE754双精度浮点数 char://2字节无标记Unicode字符

几近全部的Java范例查抄都是在编译时完成的.上面列出的原始数据范例的数据在 Java履行时不需求用硬件标志.操作这些原始数据范例数据的字节码(指令)本身就已经指出了操作数的数据范例,比方iadd、ladd、fadd和dadd指令都是把两个数相加,其操作数范例分外是int、long、float和double.

虚拟机没有给boolean(布尔)范例设置单独的指令.boolean型的数据是由integer指令, 包含integer返回来处理的.boolean型的数组则是用byte数组来处理的.

虚拟机利用IEEE754格局的浮点数.不支持IEEE格局的较旧的计算机,在运行Java数值计算程序时,大概会非常慢.

虚拟机支持的别的数据范例包含:

object//对一个Javaobject(对象)的4字节引用 returnAddress//4字节,用于jsr/ret/jsr-w/ret-w指令

注:Java数组被当作object处理.

虚拟机的标准关于object内部的构造没有任何特别的要求.在Sun公司的实现中,对 object的引用是一个句柄,此中包含一对指针:一个指针指向该object的办法表,另一个指向 该object的数据.

用Java虚拟机的字节码表示的程序应当服从范例规定.Java虚拟机的实现应回绝履行违反了范例规定的字节码程序.

Java虚拟机由于字节码定义的限制仿佛只能运行于32位地址空间的机械上.但是可以成立一个Java虚拟机,它自动地把字节码转换成64位的情势.

从Java虚拟机支持的数据范例可以看出,Java对数据范例的内部格局举行了严峻规定,这样使得各种Java虚拟机的实现对数据的注释是相同的,从而保证了Java的与平台无关性和可移植性.
  以上是“<b>Java虚拟机</b>[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • <b>hosts是什么 hosts文件在什么位置 若何改正hosts</b>
  • <b>在 Windows 8 中手动安装语言包</b>
  • <b>五个常见 PHP数据库问题</b>
  • Windows中Alt键的12个高效快速的利用本领介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • <b>详解MySQL存储历程参数有三种范例(in、out、inout)</b>
  • <b>Win8系统恢复出来经典的开始菜单的办法</b>
  • <b>Win8系统花屏怎么办 Win8系统花屏的办理办法</b>
  • <b>Windows 7系统下无线网卡安装</b>
  • <b>为什么 Linux不需求碎片整理</b>
  • <b>Windows 8中删除账户的几种办法(图)</b>
  • <b>教你如安在win7下配置路由器</b>
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .