03编译型 和 解释型

+ 编译型和解释型

什么是编译型语言

程序运行前需要一个专门编译的过程,把程序变异成机器可运行的机器码文件,运行时直接运行便编译过后的机器码文件。不需要重新编译 。C语言就是标准的编译型语言代表。

编译型语言的优点是执行效率高。

缺点是跨平台性比较差,需要依赖特定的编辑器

解释型语言

程序在运行时在被编译成机器码文件,每次执行都需要编译一次,

优点是跨平台性强

确定是执行效率相对来说比较低(但是随着科技的发展,各种硬件的发展,这个差距智慧越来越小 ,知道可以几乎不用考虑这方面的效率)

代表性语言:Python C# PHP……

解释型+编译型语言

代表语言:Java

Java的运行需要JDK环境的支持

因为Java文件的执行顺序是,Java文件被javac运行程序变异成.class文件 ,然后通过Java虚拟机(JVM)加载.class文件 然后调用java.exe程序执行程序。

所以Java是边编译边解释执行的语言

优点是跨平台性好 扩展性强

缺点是执行效率不如解释型语言或者编译z型语言高!

!!!对于编译和解释的理解,我觉得狂神老师的一个比喻超级生动,大概是这样的,一个美国人如果想要看一本中国人写的书籍,那么他可以让中国人翻译好该本小说再阅读,也可以请一个翻译一边翻译一边阅读;一次性翻译过程类似编译,边看边翻译的过程类似解释;如果是编译,那么当小说有改动时就需要重新印刷;如果是解释,那么当小说有改动时并不需要全本重译。

个人记录 仅供参考 欢迎大家提出问题 一起学习

你可能感兴趣的:(03编译型 和 解释型)