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

Java语言是解释型还是编译型语言?

Java的运行过程
Java源文件(*.java)通过java编译器(javac)编译成一个ByteCode字节码文件(*.class),字节码由java自己设计的一个计算机JVM解释执行,虚拟机将每一条要执行的字节码送给解释器没解释器将其翻译成特定机器上的目标机器码,然后再特定机器上运行。
JVM
java的跨平台是基于JVM的。JVM是一台计算机上由软件或硬件模拟的计算机,java程序编译后的(*.class)文件都是在JVM上运行的,也就是说*.class文件只需认JVM,由JVM去适应各个操作平台系统,所以不同的操作系统只要安装符合其类型的JVM。
对于编译后文件的处理

  • 运行时,ByteCode由JVM逐条送给解释器,解释器将翻译后才能机器码运行;
  • 运行时,部分ByteCode可能由实时编译器编译成目标机器码再执行,因为JVM中没有解释器;
  • RTSJ,继javac后执行AOT二次编译,生成静态的目标平台码。

所以java是先编译后解释,但是运行的时候是解释型语言的翻译方式,可以是解释型语言也可以是编译型语言。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值