百度阿里腾讯最常考的Java面试题精选2--JVM,JDK和JRE是什么

2. JVM,JDK和JRE是什么

1.java程序从源代码到运行经历3个步骤:
.java文件(源代码)—[JDK中javac的编译]----.>class文件(jvm可理解的java字节)—[JVM]---->机器可执行的二进制机器码

2.java为何运行效率高?
(Java语言通过字节码的方式,在一定程度上解决了传统型语言执行效率低的问题,只面向虚拟机同时又保留解释型语言可移植的特点,因此java运行效率较高)

3.java为何是编译与解释共存的代码?
从.class到机器码,jvm类加载器先加载字节码文件,通过解释器逐行执行,有一些热点代码经常会被执行,引入了JIT编译器(运行时候的编译),第一次编译之后,字节码对应的二进制码被保存下来,后面直接使用这也就是为何一开始运行java环境速度较为缓慢,之后变得快,

JVM:
JVM是运行java字节码的虚拟机,jvm可以理解的代码叫做字节码,(.class文件)JVM有针对不同操作系统的特定实现,目的是使用相同的字节码给出相同的结果,字节码文件面向的是虚拟机,字节码和不同系统的JVM是实现java语言的一次编译,随处可运行的关键

JRE
java运行环境,包含JVM和运行JAVA程序时候的核心类,用来编译java程序所需的所有内容集合,但不能用于创建新程序

JDK:
java开发工具包,包含JRE和java开发工具,比如编译器javac等,它能够创建和编译程序

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值