编译型语言and解释型语言(脚本语言)

解释型语言(脚本语言)
常见:Python、JavaScript、php等
注意:解释型语言包含脚本语言。脚本语言(js) 解释型语言(js、php)

脚本语言一般都有相应的脚本引擎来解释执行,需要解释器才能运行。脚本语言有很多种,解释器也有很多种,所以不同的脚本需要不同的解释器,只有脚本与解释器对应,才能正确解释脚本。 

python 为例: python 源码不需要编译成二进制代码,它可以直接从源代码运行程序。当我们运行 python 文件程序的时候,python 解释器将源代码转换为字节码,然后再由 python 解释器来执行这些字节码。这也是Python代码无法运行的像编译语言一样快的原因。 
脚本语言运行只需要直接运行源代码便可。

这里写图片描述
Javascript解释器:就是执行javascript代码的代码(引擎)。
每个浏览器的Javascript解释器并不一样,一般都包含在各浏览器的内核中。
浏览器内核一般包含两个引擎:页面排版引擎 和 JS引擎
IE的 使用的自己的Trident 内核
FireFox 是Gecko内核
Opera 是Presto内核
Safari 使用的Webkit 内核
Chrome 是Google自己的 javascript V8引擎 而其页面排版采用的Webkit 内核

编译语言
常见:java、c、c++ 等

Java 是编译型和解释型语言的结合体 由 Java 语言编写的程序需要经过编译来生成字节码(也就是 .class 文件),但这种字节码不是可执行性的,所以再由 Java 解释器( JVM )来解释执行。JAVA 虚拟机,即 JVM ( Java Virtual Machine )负责解释行字节码文件。所有平台上的 JVM 向编译器提供相同的编程接口,而编译器只需要面向虚拟机,生成虚拟机能理解的代码,然后由虚拟机来解释执行。

 JAVA 的执行过程: 在 Java 开发环境中进行程序代码的输入,生成 .java 的 Java 源文件。再由 Java 编译器对源文件编译成字节码(.class 文件),最后再由 JVM 将字节码解释成机器码执行并显示运行结果。 JAVA 语言既不是纯粹的编译语言,也不是纯粹的解释性语言。所以运行 JAVA 程序必须经过编译 、运行两个步骤。

*这里写图片描述*

猜你喜欢

转载自blog.csdn.net/longlc123/article/details/81069823