什么是字节码?采用字节码的好处是什么?
java中的编辑器和解释器:
java中引入了虚拟机的概念,即在机器和编译程序之间加入了一层抽象的虚拟机的机器。这台虚拟的机器在
任何平台上都提供给编译程序一个的共同的接口。
编译程序只需要面向虚拟机,生成虚拟机能够理解的代码,然后由解释器来讲虚拟机代码转换为
特定系统的机器码执行。在java中,这种供虚拟机理解的代码叫做字节码(即扩展名为.class的文件),
它不面向任何特定的处理器,只面向虚拟机。
每一种平台的解释器是不同的,但是实现虚拟机是相同的,java源程序通过编译器编译后变成
字节码,字节码由虚拟机解释执行,虚拟机将每一条要执行的字节码送给解释器,解释器将其翻译成特定机器上的机器码,
然后在特定的机器上运行。这也就是解释了java的编译与解释并存的特点。
java源代码---》编译器---》jvm可执行的java字节码---》jvm---》jvm中解释器---》机器可执行的
二级制机器码---》程序运行。
采用字节码的好处:
java语言通过字节码的方式,在一定程度上解决了传统解释型语言执行效率低的问题,同事又保留了解释型语言可
可移植的特点,所以java程序运行时比较高效,而且,由于字节码并不转对一种特定的机器,因此,
java程序无需重新编译即可在多种不同的计算机上个运行。