学习了这么久的Java虚拟机,今天别人问起来最大的作用是什么,我居然有点懵圈,所以来总结一下我觉得JVM除了垃圾回收,分区管理、类加载外最大的作用。
平台无关性
解释运行字节码程序 消除平台相关性
jvm将java字节码解释为具体平台的具体指令。一般的高级语言如要在不同的平台上运行,至少需要编译成不同的目标代码。而引入JVM后,Java语言在不同平台上运行时不需要重新编译。Java语言使用模式Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。
Java能发展到今天这个地步,平台无关性应该有举足轻重的地位