日期:2014-05-20  浏览次数:20679 次

我在书上看到说jvm.dll就是java虚拟机,那么这个虚拟机是作什么用的呢?
我在书上看到说jvm.dll就是java虚拟机,
那么这个虚拟机也就是jvm.dll是作什么用的呢?

它和jre又是什么关系呢?
谢谢

------解决方案--------------------
..................................................................................................................................................................................................
------解决方案--------------------
楼主这个问题问的太牛了
大体说虚拟机就是一个运行java的基础容器
他负责把java代码和你的机器上的系统接起来
这问题太大了
没发说了
------解决方案--------------------
虚拟机主要是起解释与执行作用的,你写的java代码便以后都是字节码,需要解释才能执行,而jre是包含了基本的类库的运行环境,这样才可以去使用基本类,如string,arraylist
------解决方案--------------------
jre = jvm + classloader
jvm应该说是个规范,这个规范由jre实现,但是jre不仅仅有jvm、它还必须有classloader,用于将.class文件加载到jvm上运行。
------解决方案--------------------
的确,jvm是个规范 jvm == java virtual machine specification

JRE目录下的Bin目录有两个目录:server与client。这就是真正的jvm.dll所在。 
jvm.dll 无法单独工作,当jvm.dll启动后,会使用explicit的方法(就是使用Win32 API之中的LoadLibrary()与GetProcAddress()来载入辅助用的动态链接库),而这些辅助用的动态链接库(.dll)都必须位于jvm.dll所在目录的父目录之中。 

------解决方案--------------------
不少牛比公司都分别实现了JVM,我们平常用的都是SUN公司的