8.12-为什么说 Java 语言“编译与解释并存”?

为什么说 Java 语言“编译与解释并存”?

我们可以将高级编程语言按照程序的执行方式分为两种:

编译型语言和解释型语言编译型语言和解释型语言

根据维基百科介绍:

为了改善编译语言的效率而发展出的即时编译open in new window技术,已经缩小了这两种语言间的差距。这种技术混合了编译语言与解释型语言的优点,它像编译语言一样,先把程序源代码编译成字节码open in new window。到执行期时,再将字节码直译,之后执行。Javaopen in new windowLLVMopen in new window是这种技术的代表产物。

相关阅读:基本功 | Java 即时编译器原理解析及实践open in new window

为什么说 Java 语言“编译与解释并存”?

这是因为 Java 语言既具有编译型语言的特征,也具有解释型语言的特征。因为 Java 程序要经过先编译,后解释两个步骤,由 Java 编写的程序需要先经过编译步骤,生成字节码(.class 文件),这种字节码必须由 Java 解释器来解释执行。