通俗解释是,一般使用文本保存,不需要'编译'的语言的,直接由解释器的语言。脚本语言也就是说脚本语言其实是为了方便的使用,运行简单的一门语言。就像js一样,在去掉BOM,DOM,还有NodeJS之后,只剩下动态的变量声明,基本的逻辑语句if/else/elseif,和循环语句while-do,for,还有数组,对象{},函数function。非常的简单,入门轻松。
似乎就这样讲完了脚本语言是什么,等等,其实我们还没有讲到本质和关键。
上面我们说到了解释器,在编译原理里面相对应的还有编译器。这样我们好像联想到了编译型的语言,比如我们刚刚入门可能会学到的c语言,需要通过编译器编译成机器语言然后由引导装载程序读取复制到内存中执行。
编译器能够将我们用某种语言编写的程序代码转化成另一种语言的程序。通常来说,它会将源程序编译成机器语言。
解释器根据程序中的算法逻辑执行,是一种执行程序的软件。
有些语言编写的程序无需借助软件执行,也就是说不需要语言处理器,这种语言就成为机器语言。这种语言可以直接通过硬件执行。
但是需要注意的是,我们编写的机器语言程序,需要通过软件从硬盘上读取复制到内存中才能执行。
由上面的解释可以看出来,js是一门解释型的语言。是一边执行代码逻辑,一边逐行解释,不会有一开始的编译成机器语言的过程。这样一看,js还是需要编译,只是是在执行的过程中进行编译,在js的解释器中,还是有编译器这个东西,比如,我们会说js在预编译过程中,会提升变量声明,这就是编译器在执行预编译。
在现代的语言处理器中,编译器和解释器很多时候是你中有我,我中有你,有时候会难分彼此。比如java语言,java语言先将源文件编译成java二进制文件,然后通过java虚拟机的解释器来进行执行,但是有些虚拟机为了速度,在执行过程中,会用编译器将一部分java二进制代码直接转化成机器语言使用,在执行过程中进行的机器语言转化称为动态编译或JIT(just-in-timecompile)。
经过上面的学习,我们就会有疑问,我们为什么不把所有的语言都编译机器语言,这样速度快,还不用每次都解释执行。
因为我们的高级程序语言应该能够使跨平台的,我们的虚拟机是一个隔离的虚拟运行环境,只要有这个虚拟机在,我们写的程序就可以跑起来,不管在哪个平台。虚拟机的作用就是,把我们的源程序编码成能在当前平台运行的机器语言,或者说是cpu指令。
以上就是极悦小编介绍的“Java脚本语言是什么”的内容,希望对大家有帮助,如有疑问,请在线咨询,有专业老师随时为您服务。
你适合学Java吗?4大专业测评方法
代码逻辑 吸收能力 技术学习能力 综合素质
先测评确定适合在学习