Ⅰ 编译型和解释型的区别&java从编译到执行的过程
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文件为什么需要编译为class
java为了跨平台,所以需要一个中间平台java虚拟机且程序也要是中宏改间平台运行蔽配判程序,在任何系统只需要装上java虚拟机就能运行程序。而程序编译成class字节码,这样任何机器上的java虚拟机都能运行相同的字节码,所以。。要卖扒编译成字节码
Ⅲ 运行java程序时,为什么要先编译再运行,编译运行一起进行不行吗
java讲究的是 一次编译 处处运行,也就是提高了程序的一致性。java的程序之所在不同的操作系统上的运行结果是一样的,是因为java虚拟机。
所以要运行java都要装一个叫jdk的东西,里面有java的虚拟机。这个虚拟机就是来解释我们写的代码。通过这个虚拟机,就实现了代码的移植。
我们写好的程序,通过虚拟机,编译成class文件,然后在运行。但是我们只需要编译一次即可。
Ⅳ java中编译的意思,解释的意思。
Java是编译的,因为他把源代码变成了字节码,而不是每次都解释源代码。
Java是解释的。因为字节码是被JVM负责执行,而不是真正的二进制码!
Ⅳ java源代码为什么要编译
你现在电脑里的文件是文档文件确切的说在计算机里也是0和1的序列 但是他和执行程序不是一
个类型的文件 文件是由类型的比如说mp3 是播放声音的 MP4是播放视屏的 TXT是文档文件
就是存储文档的 在回到问题
.java文件其实就和TXT文件一样是文档文件是用来存储你写的代码的
他是拿来给你人看的
你要想让他变成其可执行程序的文件你就得通过编译器编译它
编译器是按照你写的代码把他们翻译成可执行文件的编码方式
然后你就可以运行它了
在计算机看来所有的文件都是0和1的组合 应为文件的类型的不同它会用不同的方式解读它们
具体的java程序。编译。运行等等环节怎么完成怎么解释 你得慢慢了解 或者有时间我在给你解释解释
写的比较乱 你凑合着看吧
Ⅵ 什么叫java编译
就是把.Java文件编译成.class文件
Ⅶ java源代码为什么要编译
程序设计高级语言的原理都是相似的。JAVA,C,C++,等都类似。
说一下JAVA的:
我们先把自然语言,也就是我们平时的话写成程序设计高级语言,这是编程。
然后再通过编译器生成class也就是字节码文件,这个过程是编译。此时的class文件我们也可以称之为二进制码,就是计算机可识别的0,1文件了。而编译是计算机内部运行,不需要编程者操作。
.java是以源文件形式存在,是编译器和我们都可识别的语言。
编译器识别了.java文件后生成.class文件,是编译器和计算机可识别的语言。
然后计算机会使同名的.java和.class文件关联,计算机自己有两次翻译过程,而这个过程操作者并不需要操心。之后我们就可以运行.java文件了。
Ⅷ java语言在被设计的时候为什么会加上 编译 这一步
java语言在被设计的时候为什么会加上编译这一步,其实主要的考虑因素是性能,静态语言的执行效率比动态语言要高得多。所以需要编译。