为什么使用Java虚拟机?

Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这一特点的关键。一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。而引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用模式Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。 Java虚拟机的使用主体

第1个回答  2013-11-27
一、学生与初学者

由于计算机发展的太快,现在许多学生在开始学计算机时,都是从Windows 98、Windows 2000开始学习,对于MS-DOS、Windows 3.x、NetWare等,并不了解。这样,当学生使用的计算机出现故障时,就不知道怎样解决,因为他(她)不知道计算机的来笼去脉,不知道怎样去解决。比如一个很小的故障,Windows 98的计算机不能启动了,是因为在软驱中有一张非引导磁盘。这时,他就不知道把这张磁盘从软驱中取出再重新启动计算机。
学生们可能学习了一些计算机的(历史)知识,也知道启动磁盘,也知道MS-DOS,也知道格式化磁盘,也知道硬盘在使用前需要分区、格式化,也知道软件需要安装,也知道……。
同学们从书本上学了太多的“也知道”,但是,却很少有学生能亲手去进行实践。因为:
1. 学校的机房,都是由机房的管理员负责安装好系统,机房的机器一般是不允许学生自己安装系统,更不准学生对硬盘分区,对硬盘进行格式化,这在学校来说是不能容忍的,也是不现实的。
2. 即使学生自己有机器,配置也很高,但也很少有学生在自己的机器上分区、格式化、频繁安装新的系统,如果总对硬盘进行分区、格式化的话,机器也不会用很长。如果想学工具软件,也不会用自己的机器做实验,尤其是一些“危险”性的实验。

3. 学生只有一台机器,不能做网络实验,最多能做一些上网的实验。即使几个同学把机器放到一起做实验,姑且不说场地、电源不好找,就是网卡、交换机之类的东西也不好配。
现在的学生大多是纸上谈兵,因为学习的知识如果没有经过检验的话,就只能停留在理论上。不但现在的用人单位青睐有实战经验的,就是自己也会认为这样不行。在我以前教MCSE的学员时,就听说过有的通过MCSE七门考试的学员,甚至不认识网卡的情况,这绝不是笑话。
“实践是检验真理的唯一标准”,没有经过实践、没有亲手操作过,就不可能学会、学通、学精。
在虚拟机中,您可以尽情的、放心大胆的作每一个实验。
二、电脑爱好者

因为爱好,我们总喜欢第一时间使用最新软件,在第一时间使用新的操作系统,或者尝试使用多个系统。如果在您的机器上使用最新软件,就可能造成系统不能启动、容易感染病毒等。如果使用新的系统软件,那就更容易出现故障,因为安装新系统时,很容易损坏硬盘、丢失数据。要知道,计算机硬件相对来说有价,但是您的数据,在很多时候是无价的。即使您是计算机的高手,也容易在测试新的系统时出现错误。
笔者的一个同事,因为要学习Linux,就在他的机器上安装。在安装之前,为了保险,他又找了一块硬盘,准备在第二块硬盘上安装Linux。他把这块硬盘插在主IDE口设置为从设备,在CMOS里面把主硬盘(他原来的硬盘,在主IDE口,设置为MASTER)设置为none。他用linux的光盘,从光驱引导安装,但在安装时,Linux“自动”把主硬盘也重新分区并“Format”了。因为,虽然在CMOS中将主硬盘设置为了“无”,但Linux和Windows2000等系统也会在安装的时候检测到。他几年的数据就这样全部完了,当时他跳楼的心都有……。
现在好了,有了虚拟机,您可以在虚拟机中安装各种软件,不用为了测试软件天天安装新系统,在测试系统软件时,也不用担心我们宝贵的数据了。在虚拟机中做实验,一切都是真实的,与在真正的计算机上做实验,效果是完全一样的。同时,您也可以完全放心,不用再战战兢兢、小心翼翼的安装系统了。
三、网络管理员

因为是网管,就需要维护企业网络的安全,让企业的网络不受到外部的攻击。同时,也要充分发挥网络的功能,为企业服务好、站好岗。这时候,就需要我们经常测试一些补丁程序、测试一些网络软件,如果使用物理机器,容易造成硬件的损坏,也可能降低网络的安全性(如果您在计算机上测试软件时,可能会运行了木马程序或者黑客程序)。
如果我问您,有没有做过网络、做过网络的实验,您一定会笑我,这年头谁没有做过网络、谁没有做过网络的实验。用这句话问一百个从事计算机的,至少有六十个人说组建过网络,只要是从事过计算机的,大多组建过网络。那么,我问您,有没有组建过群集,有没有做过群集的实验呢?如果用这句话问一百个从事计算机的、甚至是100个专门从事计算机网络的,那么我可以肯定的说,不会有超过三个人做过群集或群集的实验。
我们知道,Windows 2000 Advanced Server支持“群集”服务,但很少有人做过群集的实验,因为实验的成本太高了(要想做群集的实验,至少需要二台群集主机,一个共享SCSI的磁盘柜,这至少需要二、三十万元人民币)。而现在好了,您可以在VMware的虚拟机中做群集的实验,这是VMware公司的“不传之秘”,本书独家披露了这一功能及介绍了实验的方法并提供了相应的工具。
第2个回答  2013-11-27
java程序不能直接运行在常见的操作系统中,所以需要安装运行java虚拟机,在操作系统之上搭建java程序运行的基础环境

Java 程序为何要运行在 jvm 虚拟机上?
Java程序需要运行在JVM(Java虚拟机)上,主要有以下几个原因:1. 平台无关性:Java程序编写的代码是平台无关的,这意味着只要源代码相同,就可以在不同的平台上运行。这是通过将Java源代码编译成字节码文件(.class文件),然后JVM解释执行这些字节码来实现的。这样,只要在不同的平台上安装有相同版本...

谁能教我用JAVA虚拟机
1.为什么要使用Java虚拟机 Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这一特点的关键。一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。而引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用模式Java虚拟机屏蔽了与具体...

虚拟机有什么用
而引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用模式Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。2.谁需要了解J...

为什么使用Java虚拟机?
在虚拟机中,您可以尽情的、放心大胆的作每一个实验。二、电脑爱好者 因为爱好,我们总喜欢第一时间使用最新软件,在第一时间使用新的操作系统,或者尝试使用多个系统。如果在您的机器上使用最新软件,就可能造成系统不能启动、容易感染病毒等。如果使用新的系统软件,那就更容易出现故障,因为安装新系统...

为什么JAVA运行要用到JAVA虚拟机,而 C 语言不用呢??
我跟你清除点说,java是一次编译到处运行的,听说过这句话吧。其实java这个到处运行的特性被java虚拟机来完成了,所以java必须要虚拟机。从另一个角度,java程序首先被编译成*.class文件,然后,虚拟机在将*.class文件编译成本地机器能执行的机器语言,这步是由java虚拟机完成的;与c不同,c编译时一...

什么叫虚拟机?VPC
1.为什么要使用Java虚拟机 Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现 这一特点的关键。一般的高级语言如果要在不同的平台上运行,至少需要编译成 不同的目标代码。而引入Java语言虚拟机后,Java语言在不同平台上运行时不需 要重新编译。Java语言使用模式Java虚拟机屏蔽了...

java虚拟机的作用
定义:Java虚拟机(Java Virtual Machine 简称JVM)是运行所有Java程序的抽象计算机,是Java语言的运行环境,它是Java 最具吸引力的特性之一。作用:使用Java虚拟机是实现Java语言与平台的无关性的关键。

什么是手机虚拟机
手机虚拟机,通常指的是Java虚拟机,它在手机应用开发中扮演着核心角色。由于许多手机应用都是基于Java语言编写的,这些程序的运行实际上就是在Java虚拟机这个特殊的环境中进行。Java虚拟机并非实际的硬件设备,而是一个软件抽象层,它的主要职责是为Java程序提供运行平台,确保应用程序能够在各种不同的手机...

java虚拟机是什么意思
Java虚拟机(Java Virtual Machine,JVM)是一种可以在不同的操作系统上运行Java程序的虚拟计算机。它是在Java平台下所定义的不同程序运行的环境,使得Java程序可以实现跨平台的特性。JVM在Java编译器对Java源代码进行编译并生成字节码之后,将这些字节码解释为不同平台机器指令来执行。JVM提供的不止是一个...

什么叫虚拟机?
Java虚拟机是一个想象中的机器,在实际的计算机上通过软件模拟来实现。Java虚拟机有自己想象中的硬件,如处理器、堆栈、寄存器等,还具有相应的指令系统。1.为什么要使用Java虚拟机Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这一特点的关键。一般的高级语言如果要在不同的平台上运行,...

相似回答
大家正在搜