Java 中什么是字节码 ?字节码的好处是什么?

原始的思维导图文件(github)

https://github.com/YIMEng-0/JavaPlus/tree/main/javaSE%E5%A4%8D%E4%B9%A0%E5%87%86%E5%A4%87/java%E5%9F%BA%E7%A1%80

如有帮助 欢迎 star

目前已经整理好的思维导图

思维导图

在这里插入图片描述

1 Java 中什么是字节码 ?字节码的好处是什么?

什么是字节码?

.java 为后缀的源代码在编译器编译后的结果,编译后成为 .class 文件

为什么提到编译器与解释器?

因为一个Java程序的运行需要使用编译器与解释器的中间翻译层;
中间翻译层:原始的代码转换成为机器可以识别的机器码;
在Java 中就是 .java --> .class --> 二进制的机器码

2 什么是编译器以及解释器(Java 中的编译器以及解释器)

1、编译 Compile:把整个程序源代码翻译成另外一种代码,然后等待被执行,发生在运行之前,产物是「另一份代码」,Java 中是产生字节码文件

2、解释 Interpret:JVM 中把字节码识别转换成为机器码并且在特定的机器上面运行

  • Java解释器的概念,Java解释器:解释器是Java虚拟机非常重要的一部分,它的工作就是把字节码转化为机器码并在特定的平台进行运行。简单一点,java的解释器只是一个基于虚拟机JVM平台的程序 ,即jdk或jre目录下bin目录中的java.exe文件。 Java解释器相当于运行Java字节码的“CPU”,但该“CPU”不是通过硬件实现的,而是用软件实现的

    • 解释器(英语:Interpreter),又译为直译器,是一种电脑程序,能够把高级编程语言一行一行直接转译运行。解释器不会一次把整个程序转译出来,只像一位“中间人”,每次运行程序时都要先转成另一种语言再作运行,因此解释器的程序运行速度比较缓慢。它每转译一行程序叙述就立刻运行,然后再转译下一行,再运行,如此不停地进行下去

3 Java 中源代码到执行的流程

Java源代码---->编译器---->jvm可执行的Java字节码(即虚拟指令)---->jvm---->jvm中解释器----->机器可执行的二进制机器码---->程序运行

4 使用字节码的好处

1、Java语言通过字节码的方式,在一定程度上解决了传统解释型语言执行效率低的问题,同时又保留了解释型语言可移植的特点。

2、所以Java程序运行时比较高效,而且,由于字节码并不专对一种特定的机器,因此,Java程序无须重新编译便可在多种不同的计算机上运行

5 Java 编译器和解释器共存的特点

Java源程序经过编译器编译后变成字节码,字节码由虚拟机解释执行,虚拟机将每一条要执行的字节码送给解释器,解释器将其翻译成特定机器上的机器码,然后在特定的机器上运行。这也就是解释了Java的编译与解释并存的特点

6 小结

1、编译器是一下子进行全部代码的翻译

2、解释器是对于编译器翻译好的全部东西逐个翻译,翻译一下,运行一下,即时翻译

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值