编译型语言与解释型语言的区别

Posted 久成八

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编译型语言与解释型语言的区别相关的知识,希望对你有一定的参考价值。

什么叫编译型语言

通过专门的编译器,针对某个特定的平台,将高级语言一次性编译生成机械码,并且包装成该平台的可执行样式,这种过程称为编译,这种可执行样式可脱离开发环境,在特定平台执行。
有些程序在编译结束后,还可以与其他语言进行链接,生成最终的可执行程序,实现低代码复用。
通常运行效率高,但可移植性不强。
常见的有:c、cpp、Kotlin

什么叫解释型语言

通过专门的编译器,把源程序逐行执行成特定平台的机器码并立即执行语言。一般不会考虑整体性的编译和链接处理,相当于把编译型语言的解释与运行混合同时完成。
因此每次执行都需要一次编译,所以跨平台容易。
常见的有:javascript、Ruby

Java是什么语言

java不是完全的编译型语言或者解释型语言,java需要先编译,但这个编译不会生成相应的机器语言,而是生成.class后缀的字节码文件,这个字节码文件被JVM所运行。(在某些JVM中,会把JVM代码转换成特定的操作系统的机器代码,提高执行效率)。
我们需要知道的是,java的编译操作生成的字节码文件只对JVM负责,面向不同的系统,则由JVM考虑,不同的系统有不同的虚拟机,但是不同的虚拟机面向字节码文件的接口是相同的。

以上是关于编译型语言与解释型语言的区别的主要内容,如果未能解决你的问题,请参考以下文章

编译型语言解释型语言脚本语言之间的区别与联系

编译型与解释型动态语言与静态语言强类型语言与弱类型语言的区别

编译型语言解释型语言静态类型语言动态类型语言概念 与 区别

编译型语言解释型语言静态类型语言动态类型语言概念与区别

编译型语言解释型语言静态类型语言动态类型语言概念与区别

编译型语言解释型语言静态类型语言动态类型语言概念与区别