JDK、JRE、JVM联系区别浅析

1.JVM

JVM(Java Virtual Machine,Java虚拟机).

JVM是一个虚构的计算机,可以仿真模拟各种计算机功能实现.

JVM在执行字节码时,把字节码解释成目标平台的机器指令执行.实现Java的"一次编译,到处运行".

2.JRE

JRE(Java Runtime Environment,Java运行环境).

包含:JVM标准实现,Java核心类库(rt.jar).

JRE是Java的运行环境,程序解释class时,调用解释所需的类库lib.

安装/解压的jre包含两个文件夹:bin/,lib/

bin/:包含最主要的java.exe(win)/ java(linux) Java解释器,启动 JVM(Java虚拟机),将 .class 文件一行一行地解释成机器指令执行。(由 Java 虚拟机对字节码进行解释和执行) 

lib/:类库.包含rt.jar,Java基础类库,也就是Java doc里面看到的所有的类的class文件。

3.JDK

 JDK (Java Development Kit,Java开发工具)

包含:JRE(Java运行环境(Java Runtime Envirnment),Java工具(javac,java..),Java核心类库(包括dt.jar)

jdk文件夹中比较重要的

bin/:JDK中所包含的开发工具的可执行文件,PATH环境变量应该包含一个指向此目录的项。最主要的是编译器(javac.exe)

include/:本地的方法文件。编写JNI等程序需要的C头文件。

jre/:就是上面的JRE

lib/:开发工具使用的文件。里面有个tool.jar,它包括支持JDK的工具和实用程序的非核心类,执行javac的时候用到。也包含dt.jar,它是BeanInfo文件的DesignTime归档,BeanInfo文件用来告诉交互开发环境〔IDE〕如何显示Java组件以及如何让开发人员根据应用程序自定义它们。

src.zip:部分JDK的源码的压缩文件

4.JDK,JRE,JVM联系与区别

JVM是解释.class文件时,需要调用解释文件中所需的类,就需要JRE中的lib/中的类库.可以认为JRE中的bin/就是JVM,lib就是所需的类库.JRE = JVM + lib/.

JDK的编译程序将.java文本文件编译成.class字节码文件,.class文件在JRE上运行,通过JVM解释字节码,映射到系统执行.

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值