什么是字节码
概念
Java源代码经过虚拟机编译器编译(javac)后产生的文件(即扩展为.class的文件),他不面向任何处理器,只面向虚拟机
对于解释型语言和编译型语言的描述,可以看这篇文章
Java不同于普通的解释性语言与编译型语言
对于普通的解释性语言来讲,Java不是执行一句编译一句,而是将所有执行的源代码编译成class文件,提高了效率
对于普通的编译型语言来讲,由于有虚拟机的存在,Java的跨平台性大大提高了
流程
Java源代码---->编译器---->JVM可执行的java字节码---->JVM---->JVM中解释器---->及其可执行的机器码---->程序运行
采用字节码的好处
Java通过字节码的方式,一定程度上解决了传统解释型语言执行效率低的问题,同时又保留了解释型语言可以移植的特点,所以程序运行时比较高效,而且由于字节码并不专对一种特定机器,因此Java程序无锡重新编译便可在多种不同的计算机上运行
参考文章
膜拜!华为大牛透彻讲解Java面试100道必考题,不管你工作几年,都得看看!现在免费分享给大家!_哔哩哔哩_bilibili