大家好,今天小编关注到一个比较有意思的话题,就是关于j***a 是解释语言的问题,于是小编就整理了4个相关介绍j***a 是解释性语言的解答,让我们一起看看吧。

  1. Java是解释型还是编译型?
  2. 编译型语言与解释型语言有何区别?
  3. 什么叫开源,都说JAVA是开源的?
  4. 编译型语言与解释型语言有何区别?

J***a是解释型还是编译型?

J***a既不属于传统的编译型语言,也不属于解释型语言,J***a是先编译成“.class”字节码文件,然后再利用JVM虚拟机进行解释执行的,所以J***a即可以说成编译型,也可以说成解释型。

java 是解释性语言-java是解释性语言还是编译语言
(图片来源网络,侵删)

编译型语言与解释型语言有何区别?

有以下几点区别:

一、程序控制权不同

java 是解释性语言-java是解释性语言还是编译语言
(图片来源网络,侵删)

对于解释性语言而言,程序运行时的控制权在解释器而不再用于程序。编译型语言对于编译器而言,运行时的控制权在用户程序。

二、运行速度不同

java 是解释性语言-java是解释性语言还是编译语言
(图片来源网络,侵删)

一些网页脚本,服务器脚本以及***开发接口这样的对速度要求不高,对不同系统的兼容性有一定要求的程序则通常使用解释性语言,如J***a、J***aScript、VBScript、Perl、Python、Ruby、Matlab等等。

编译语言由于程序执行速度快,同等条件下对系统的要求比较低,因此像开发操作系统、大型应用程序、数据库系统等时都***用它,像C/C++,Pascal/Object Pascal(Delphi)等都是编译型语言。

三、移植性不同

解释型语言,例如J***a语言,J***a程序首先通过编译器编译成class文件,如果在Windows平台上运行,则通过Windows平台上的J***a虚拟机(VM)进行解释。如果运行在Linux平台上,则通过Linux平台上的J***a虚拟机进行解释执行。


什么叫开源,都说J***A是开源的?

开源就是开放程序源代码。就是把程序源代码发放出来,让程序的用户可以获得。

开源和收不收费没有关系,开源软件同样可以收费。

编程语言本身没有开不开源的问题。开不开源的是把语言编译成可执行程序的编译器或者是执行这种语言写的脚本的解释器软件。

也有编译j***a的编译器是不开源的。当然,常用的j***a的编译/解释器都是开源的。

所有常见的编程语言,像C, C++, Basic, Pascal, Php, Python等等都有开源的编译器或解释器。

对自己懂编写软件的语言的用户而言,水平高的可以对软件做修改以满足自己的特殊需要。水平低的可以学习。

因为软件有很多人知道源代码,有问题也容易发现。其它不懂编程的用户也相对放心一点。

对于软件编写者而言,他有可能得到看他软件源代码的高手的指导,别人也可能帮他发现软件中的问题,甚至有人帮他修正源程序中的错误。

而且,如果知道源代码的人比较多,就算他有一天不想继续开发这个软件了,也很容易找到接手的人,这对于用户也是一件好事。

编译型语言与解释型语言有何区别?

1、编译型语言

编译型语言字面意思就是编译的时候直接编译成机器可以执行或调用的程序(如exe、dll或ocx等类型)。典型常见的编译型语言包括C、C++、Pascal等语言。如将C语言可直接编译成exe程序,运行时直接运行exe程序就可以了,无需重新编译,所以程序执行效率较高。编译型语言程序执行过程如下所示:

2、解释型语言

解释型语言是相对于编译型语言来说的,其特点是不需要编译,运行时使用一个专门的解释器去翻译,每一条语句都是执行的时候才翻译,所以这类程序每执行一次就要翻译一次,运行效率较称低。典型的如J***a、Python、Matlab等语言,都属于解释型语言。解释型语言程序其执行过程如下所示:

3、两者比较

  • 从运行效率上来说,编译型语言运行速度快;而解释型语言代码需要有专门的解释器,在程序运行时,除要给用户程序本身分配内存空间外,解释器也占用系统***,所以其运行速度较慢。

  • 从可移植性上来说,编译型语言需要经过编译方可运行,只能在兼容的操作系统上运行,故可移植性差;解释型语言可移植性好,只要有解释器环境,程序就可以在不同的操作系统上运行。

  • 从代码保护性上来说,编译型语言编译后程序不可以修改,且看不到源码,保密性较好;而解释型语言较容易看到原代码。

  • 从应用场合来说,编译型语言由于其执行速度较快,同等条件下对系统的要求较低,因此常用于开发操作系统、大型应用程序、图像处理、数据库开发等场合;解释型语言常用于,一是对运行速度要求不高(如一些网页脚本、服务器脚本、接口***开发等)的场合,二是对跨平台(操作系统的兼容性)有要求的场合。

到此,以上就是小编对于j***a 是解释性语言的问题就介绍到这了,希望介绍关于j***a 是解释性语言的4点解答对大家有用。