当前位置:首页 > 虚拟机 > 正文

java虚拟机与平台有关吗(揭秘java虚拟机)


一、虚拟机和JAVA虚拟机开篇提到的虚拟机和Java虚拟机不同。
Java语言的一个很重要的特点就是它与平台无关。使用Java虚拟机来实现这个功能很重要。典型的高级语言要在不同的平台上运行,至少必须编译成不同的目标代码。自从Java语言虚拟机的引入,在不同平台上运行时就不需要重新编译Java语言了。Java语言使用模型Java虚拟机保护与特定平台相关的信息,因此Java语言编译器只需要生成在Java虚拟机上运行的目标代码(字节码),无需修改即可在多个平台上运行。当Java虚拟机(JVM)执行字节码时,它将字节码解释为机器指令以在特定平台上执行。
VMWare等开放版本中提到的虚拟机是“虚拟机”软件。这允许您在一台计算机上同时运行两个或多个WIN2000/WINNT/WIN9X/DOS/LINUX系统。
与“多重启动”系统相比,VMWare使用了完全不同的概念。多启动机器一次只能运行一台机器,切换机器需要重新启动机器。VMWare实际上是通过在底层系统平台上的多个操作系统之间切换来“同时”运行的,就像Word/Excel等标准Windows应用程序一样。


二、java具有平台独立性的原因这是因为Java程序编译后的代码是“中间代码”或字节码,而不是硬件系统可以直接执行的代码。然后在不同的硬件平台上安装不同的Java虚拟机(JVM),JVM将字节码“翻译”为可以在相应硬件平台上运行的代码。因此,Java程序员不需要担心硬件平台是什么。因此,Java可以跨平台。
C/C++不能跨平台,因为编译后的代码可以直接在一种硬件平台上运行,但这些代码不能在另一种硬件平台上运行。但是,由于可以直接执行,C/C++程序比Java程序运行效率更高。


三、什么是JAVA是虚拟机?为什么要使用他?Java虚拟机是通过软件模拟在真实计算机上实现的虚拟机器。Java虚拟机
有自己想象中的硬件,如处理器、堆栈、寄存器等,以及相应的指令系统。
为什么要使用Java虚拟机?
Java语言的一个非常重要的特性是它的平台独立性。使用Java虚拟机是实现这一功能的关键。通用高级语言要想在不同的平台上工作,至少必须编译成不同的目标代码。Java语言虚拟机推出后,Java语言在不同平台上运行时不再需要重新编译。Java语言
使用模型Java虚拟机保护平台特定的信息,因此Java语言编译器只需要生成在Java虚拟机上运行的目标代码(字节码)。在多个平台上运行不变。当Java虚拟机执行字节码时,它将字节码解释为机器指令以在特定平台上执行。
附:谁需要使用JAVA虚拟机?
Java虚拟机是Java语言底层实现的基础。任何对Java语言感兴趣的人都应该对Java虚拟机有一个大致的了解。这有助于理解Java语言的一些属性,也让你能够使用Java语言。对于想要在特定平台上实现Java虚拟机的软件人员、Java语言的编译器作者以及想要使用硬件芯片来实现Java虚拟机的人来说,必须对Java虚拟机有透彻的了解。特征。另外,如果想要扩展Java语言或者将其他语言编译成Java语言字节码,也需要对Java虚拟机有深入的了解。