Java 面试准备1 JDKJRE JVM .class文件

JDK:Java Development Kit,Java开发工具包

其包含了:

Java的编译和调试程序,Java程序的运行环境和所需的类库

(Ps:这里的编译是把各类编译成.class文件)

JDK有:JavaSE,JavaEE等等

JDK是面向开发人员的,用于Java程序的编写

JRE:Java Runtime Environment,Java 运行环境

解释二进制字节码文件(即.class文件)

含有Java application launcher(Java 应用程序启动器)和JVM

提供Java程序运行时的需要的类库

JRE是面向用户的,即用户需要运行Java程序,有JRE就够了

JVM:Java Vitual Machine,Java虚拟机

介绍:

Java程序是在JVM上运行的

不同的平台有对应的JVM

JDK,JRE,JVM三者联系

JDK开发Java程序并编译出来.class文件

(.class文件面向JVM,可以在JVM上运行)

.class文件是二进制字节码文件,需要JRE做解释

然后才可以加载进JVM,再交由JVM与操作系统交互

由于不同平台的JVM不同

所以.class可以借助不同的JVM的实现跨平台运行

即Java 借助JVM这个 “中间人” 实现了跨平台运行

(这里对比一下C/C++,它们编译出来的程序是只针对特定平台的,即Windows和Linux上编译出来的程序是不同的,一般情况下,不可以跨平台运行)


这里再补充一下JVM的加载过程:

继前面把.class加载进JVM后,程序就可以运行了

之后则是内存的分配和管理

最后程序运行完,则是有JVM的垃圾收集器来完成内存的释放


最后从宏观上看这三者关系:

JDK包含了JRE,JRE包含了JVM

简单的说,JDK是给开发人员用的(在JRE的基础上多了编译调试等一些开发工具)

对于用户,需要运行Java程序,则有JRE就够了

JVM则是被包含在JRE内

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值