编译型&解释型语言的区别
Posted levierx
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编译型&解释型语言的区别相关的知识,希望对你有一定的参考价值。
任何语言都必须翻译成机器语言,计算机才能运行高级语言编写的程序。 翻译的方式有两种:一个是编译,一个是解释。
编译型语言与解释型语言,最大的区分就是在于翻译时间的不同。
一、编译型语言(如C、C++)
在程序执行之前有专门的编译过程。将需要运行的文件编译为.exe后缀文件,以后要运行就不用重新编译了,而是直接使用编译完的.exe文件。这样做的优点在于,编译完的程序可以直接打开,执行效率高。
二、解释型语言(如Java、Python、C#)
在执行程序的过程中翻译。比如JAVA语言,在运行到待执行的部分代码时,才会将该部分代码编译。解释型语言每次运行都需要重新编译,通常需要编译器参与,效率较低,但优点是拥有跨平台性。
总结:
编译型语言,执行前编译,执行效率高,直接编译成机器语言(即某一操作系统可识别的二进制文件),跨平台性差。
解释型语言,执行时翻译,执行效率低,先转换为解释器能识别的语言,再通过解释器(如JVM)解释为机器语言执行,不依赖操作系统,跨平台性强。
附:“脚本语言”也是一种解释型语言,特点是通常为文本格式,javascript,php都是脚本语言,同样由解释器来执行语言。
以上是关于编译型&解释型语言的区别的主要内容,如果未能解决你的问题,请参考以下文章