java半解释半编译_编译型语言、解释型语言、半编译半解释型语言

计算机不能直接理解任何除机器语言以外的语言,所以必须要把程序员所写的程序语言翻译成机器语言,计算机才能执行程序。将其他语言翻译成机器语言的工具,被称为编译器。

编译器翻译的方式有两种:一种是编译,一种是解释。两种方式之间的区别在于翻译时间点的不同的时候,当编译器以解释方式运行的时候,也称之为解释器。

编译型语言:程序在执行之前需要一个专门的编译过程,把程序编译成为机器语言的文件,运行时不需要重新翻译,直接使用编译结果。程序执行效率高,以来编译器,跨平台性差些。

解释型语言:解释型语言编写的程序不进行预先编译,以文本方式存储程序代码,会将代码一句一句直接运行。在发布程序时,看起来省了道编译工序,但是在运行程序的时候,必须先解释再运行。

编译型语言可见于C , C++等。

解释型语言可见于Python,JavaScript,Perl,shell等。

对于源程序,编译型语言在执行过程中会将源文件一次性的转化为机器码,而解释型语言是边编译边解释;编译型语言是离不开解释程序的,这也导致了解释性语言对于运行时候的速度比较慢,解释型语言只要有解释器,移植起来比较方便,而编译型语言则要对于不同的系统进行编译,工作繁琐,且在调试程序的时候比较慢。

而java是半编译半解释型的语言,Java会将源文件在JVM中转化为字节码,即.class文件,在程序运行的时候转化为二进制文件。和C#中的.net有点区别,C#编译成的.net目标代码,接近于二进制文件,可移植性没有Java好,Java是“一次编译,到处执行”,C#是“一次编码,到处编译”。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值