JAVA语言是解释型还是编译型语言

2021-02-02 11:17:24 字数 3805 阅读 4182

1楼:尚学堂科技****

java语言是编译型语言

编译执行是一种计算机语言的执行方式。由编译程序将目标**一次性编译成目标程序,再由机器运行目标程序。效率高于解释执行。

2楼:育知同创教育

它既不属于传统的编译型语言也不属于解释型语言.

它是先编译成.class字节码文件,然后再利用虚拟机解释执行的.可以说先编译后解释吧.

3楼:肖修市鸿晖

于常见的解释执行语言不同,它既是编译型也是解释型:编译就是把源文件编译成.class文件,解释就是虚拟机通过解释.class文件完成对.class文件的执行。

java语言是解释型还是编译型语言

4楼:育知同创教育

java的编译器先将其编bai译为duclass文件,也就是字节码;然后zhi将字节码交由jvm(java虚拟机

dao)解释执专行;

所以很多地方都说“java是一属种半编译、半解释执行”的语言;

近来(其实也不是很"近")oracle的(以前是sun的)hotspot vm采用了jit ***pile(just in time ***pilation)技术,将运行频率很高的字节码直接编译为机器指令执行以提高性能, 所以当字节码被jit编译为机器码的时候,要说它是编译执行的也可以...

不过总体来讲,java的编译结果是被jvm“解释执行”的,所以这么说也能说通,而其实这个“是编译还是解释”这个概念在这里已经有点模糊了,理解它的过程就行了,不必下一个“精确”的定义;

而我自己仍然赞成“java是编译型语言”的说法,因为“编译”其本质就是“把一个相对高级的语言转换为另一个相对低级的语言”,而由java -> class文件的编译已经满足了这个特征; 而后面你要说jvm是“解释执行”的,那其实硬件对于机器码又何尝不是“解释执行”呢?

5楼:启俊楠烁

1.编译bai型语言在程序执行之前,有一个du单独的编译过程zhi,将dao程序翻译成机器语版言,以后执行这个程序的权时候,就不用再进行翻译了。

2.解释型语言,是在运行的时候将程序翻译成机器语言,所以运行速度相对于编译型语言要慢。

3.c/c++ 等都是编译型语言,而java,c#等都是解释型语言。

4.虽然java程序在运行之前也有一个编译过程,但是并不是将程序编译成机器语言,而是将它编译成字节码(可以理解为一个中间语言)。

6楼:冼霖卯水荷

于常见的解释执行语言不同,它既是编译型也是解释型:编译就是把源文件编译成.class文件,解释就是虚拟机通过解释.class文件完成对.class文件的执行。

解释性语言和编译型语言的区别与不同

7楼:黑马程序员

1.编译型语言bai在程序

执行之前du,有一个单独的编译过zhi程,将程序dao翻译成机器语言,专以后执行这属个程序的时候,就不用再进行翻译了。

2.解释型语言,是在运行的时候将程序翻译成机器语言,所以运行速度相对于编译型语言要慢。

3.c/c++ 等都是编译型语言,而java,c#等都是解释型语言。

4.虽然java程序在运行之前也有一个编译过程,但是并不是将程序编译成机器语言,而是将它编译成字节码(可以理解为一个中间语言)。

在运行的时候,由jvm将字节码再翻译成机器语言。

5.脚本语言一般都有相应的脚本引擎来解释执行。 他们一般需要解释器才能运行。

javascript,asp,php,perl,nuva都是脚本语言。c/c++编译、链接后,可形成独立执行的exe文件。

8楼:

两种方式只是翻译的时间不同.编译型语言写的程序执行之前,需要一个专门的编译过程,把程专序编属译成为机器语言的文件,比如exe文件,以后要运行的话就不用重新翻译了,直接使用编译的结果就行了(exe文件),因为翻译只做了一次,运行时不需要翻译,所以编

解释性语言和编译型语言的区别与不同

9楼:育知同创教育

解释性语言和编译型语言的区别与不同之处如下:

计算机不能直接理解高级语言,只能直接理解机器语言,所以必须要把高级语言翻译成机器语言,计算机才能执行高级语言编写的程序。

翻译的方式有两种:

一个是编译

一个是解释。

两种方式只是翻译的时间不同。

编译型语言写的程序执行之前,需要一个专门的编译过程,把程序编译成为机器语言的文件,比如exe文件,以后要运行的话就不用重新翻译了,直接使用编译的结果就行了(exe文件),因为翻译只做了一次,运行时不需要翻译,所以编译型语言的程序执行效率高,但也不能一概而论,部分解释型语言的解释器通过在运行时动态优化**,甚至能够使解释型语言的性能超过编译型语言。

解释则不同,解释性语言的程序不需要编译,省了道工序,解释性语言在运行程序的时候才翻译,比如解释性basic语言,专门有一个解释器能够直接执行basic程序,每个语句都是执行的时候才翻译。这样解释性语言每执行一次就要翻译一次,效率比较低。解释是一句一句的翻译。

编译型和解释型的区别&java从编译到执行的过程

10楼:尚学堂科技****

编译执行:编译执行是一种计算机语言的执行方式。由编译程序将目标**一次性编译成目标程序,再由机器运行目标程序(效率高于解释执行)

解释执行:使用解释执行的程序我们一般称为解释程序。它将源语言直接作为源程序输入,解释执行解释一句后就提交计算机执行一句,并不形成目标程序。

解释执行不依赖于平台。

java从编译到执行的过程:

编译型和解释型的区别&java从编译到执行的过程

11楼:育知同创教育

java这个语言很非凡。

二、你可以说它是解释型的。因为java**编译后不能直接运行,它是解释运行在jvm上的,所以它是解释运行的,那也就算是解释的了。

三、但是,现在的jvm为了效率,都有一些jit优化。它又会把.class的二进制**编译为本地的**直接运行,所以,又是编译的。

像c、c++ 他们经过一次编译之后直接可以编译成操作系统了解的类型,可以直接执行的 所以他们是编译型的语言。没有经过第二次的处理 而java不一样他首先由编译器编译成.class类型的文件,这个是java自己类型的文件 然后在通过虚拟机(jvm)从.

class文件中读一行解释执行一行,所以他是解释型的语言,而由于java对于多种不同的操作系统有不同的jvm所以

java实现了真正意义上的跨平台!

请**下面两张图 了解一下java的虚拟机机制:

(1)java语言的编译--解释---执行过程

(2)java的虚拟机

定义:编译型语言:把做好的源程序全部编译成二进制**的可运行程序。然后,可直接运行这个程序。

解释型语言:把做好的源程序翻译一句,然后执行一句,直至结束!区别:编译型语言,执行速度快、效率高;依靠编译器、跨平台性差些。

解释型语言,执行速度慢、效率低;依靠解释器、跨平台性好。

个人认为,java是解释型的语言,因为虽然java也需要编译,编译成.class文件,但是并不是机器可以识别的语言,而是字节码,最终还是需要 jvm的解释,才能在各个平台执行,这同时也是java跨平台的原因。所以可是说java即是编译型的,也是解释型,但是假如非要归类的话,从概念上的定义,恐怕java应该归到解释型的语言中。

什么是java编程语言,java语言是什么?

1楼 冷血有情 这个问题太泛,或许只能说java是一种oop语言。我不知道你想从这个问题中得到什么信息。如果你是想学编程,同时想用java,建议你先学学看。 或许你可以看看c语言,在和java进行对比。 java语言是什么? 2楼 抱香蕉睡觉 java是一门面向对象编程语言,不仅吸收了c 语言的各种...

Java编程语言,Java程序设计语言是什么意思?

1楼 你可以system out println 中 打印出来这俩属性看值 我没打 印象中打出来应该是都是自动给后面加上了小数点的 具体打出来看一下吧 java程序设计语言是什么意思? 2楼 匿名用户 好吧 那我把话说得俗一点吧 3楼 安徽新华电脑专修学院 程序设计语言,programming la...

请用通俗的语言解释一下什么是服务器,有哪些类型

1楼 匿名用户 web服务 器就是提供 服务的服务器。 常见的服务器还有文件服务器 打印服务器 数据库服务器 游戏服务器等等。 一般来说提供什么服务就是什么服务器,多种服务可以在一台服务器上。 如 一台服务器上有web和数据库服务,那这台服务器就同时是web和数据库服务器。 2楼 匿名用户 服务器 ...