2021年Java大厂面试必备面试题

本文介绍了Java中的字节码及其优势,字节码作为Java虚拟机(JVM)的一部分,使得Java程序具有高度可移植性。文章详细阐述了Java程序从源代码到字节码再到机器码的执行过程,强调了字节码在提高执行效率和跨平台能力方面的贡献。对于准备中级Java工程师面试的程序员来说,理解字节码和JVM的工作原理至关重要。
摘要由CSDN通过智能技术生成

对java面试而言,面试前的准备一定要有面试题收集和学习这一项,因为在招聘公司看来,对java工程师职位的最大关注就是专业知识和技能水平的考察,所以程序员去公司面试,无论怎样都要先做一套面试题。对于不同级别的程序员岗位的应聘,相应的面试题难度肯定是不一样的,今天这篇文章总结了一些中级java工程师的面试题,有想应聘中级java工程师岗位的朋友可以看看下面这些面试题目,希望对你有所帮助。

Java

什么是字节码?采用字节码的最大好处是什么?什么Java是虚拟机?

首先看看java中的编译程序和解释程序:

虚拟机的概念被引入Java中,它是在机器和编译程序之间添加一个抽象层的虚拟机器。这种虚拟机可以在任何平台上为编译器提供通用接口。编译器只需要面向虚拟机,生成虚拟机可以理解的代码,然后由解释器将虚拟机代码转换成机器码,以执行特定系统。在Java中,这个用于虚拟机制解压的代码被称为字节码(扩展名为.class的文件),它并不面向任何特定的处理器,而仅针对虚拟机。每种平台的解释器各不相同,但所实现的虚拟机相同。

Java源程序通过编译器编译而成为字节码,由虚拟机解释执行,虚拟机将每一个待执行的字节码发送给解释器,解释器将其翻译为特定机器上的机器码,然后在特定机器上运行,这就是上述Java特性的编译与解释并存的解释。

jvm源代码---->编译器---->jvm可执行Java字节码---->jvm---->jvm中的解释器---->jvm中的二进制机器码---->程序运行。

使用字节码的好处:

在保持解释型语言可移植性的同时,Java语言通过字节码的方式在一定程度上解决了传统解释型语言执行效率低下的问题。因此,Java程序在运行时效率更高,并且,因为字节码并不只适用于一种特定的机器,Java程序可以在许多不同的机器上运行,而无需重新编译。

领取100道Java精品面试题
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值