java源文件是通过java虚拟机JVM(javac命令)编译成类文件,那类文件又是通过什么工具(java命令)执行呢?

听说c语言是编译成符合本地机器的指令来执行的?那java呢?尽量全点

第1个回答  2012-08-26
java是编译成字节码(即类文件的编码),字节码是一种中间码,比机器码更抽象,通常被看成二进制或十六进制,而计算机中也是以二进制来计算的,也正是因为这个原因java可以跨平台。执行类文件就是再把字节码翻译成符合本地机器的指令去执行,也是由JVM做的。所以java的编译执行过程是:源文件---->字节码----->本地机器码。这就是为什么java运行起来比C语言慢的原因,因为多了一步翻译字节码的过程。
相似回答