• JDK > JRE > JVM


     

    1 JDK


    JDK(Java Development Kit)是java开发工具包。

    在其安装目录下面有六个文件夹、一些描述文件、一个src.zip压缩文件。主要是bin、include、lib、 jre这四个文件夹起作用

    • bin:最主要的是编译器(javac.exe)

    • include:java和JVM交互用的头文件

    • lib:类库

    • jre:java运行环境(注意:这里的bin、lib文件夹和jre里的bin、lib是不同的)

    总的来说JDK是用于java程序的开发,而jre则是只能运行class而没有编译的功能。 
    JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE。 其中的开发工具包括编译工具(javac.exe)打包工具(jar.exe)等

    2 JRE

    JRE (Java Runtime Environment) 是指java运行环境。

    主要包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库lib等。

    光有JVM还不能完成class的执行,因为在解释class的时候JVM需要调用解释所需要的类库lib。在JDK的安装目录里你可以找到jre目录,里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib和起来就称为jre。

    所以,在你写完java程序编译成.class之后,你可以把这个.class文件和jre一起打包发给朋友,这样你的朋友就可以运行你写的程序了。 

    3 JVM

    JVM(JVM Java Virtual Machine)

    JVM就是我们常说的java虚拟机,它是整个java实现跨平台的最核心的部分,所有的java程序会首先被编译为.class的类文件,这种类文件可以在虚拟机上执行,JVM解析这些字节码,映射到CPU指令集或OS的系统调用。也就是说class并不直接与机器的操作系统相对应,而是经过虚拟机间接与操作系统交互,由虚拟机将程序解释给本地系统执行。 
    可以理解为是一个虚拟出来的计算机,具备着计算机的基本运算方式,它主要负责将java程序生成的字节码文件解释成具体系统平台上的机器指令,让具体平台如window运行这些Java程序。 


    简单而言:使用JDK开发完成的java程序,交给JRE去运行。 

  • 相关阅读:
    linux下执行python错误: bad interpreter: No such file or directory
    linux下修改默认python版本
    MySQL 远程连接配置的正确实现
    Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 7
    通达信软件快捷键
    MT4快捷键
    vim快捷键
    Linux5.5下配置Centos的yum源
    ls命令结果中文件夹颜色(蓝色)的改变方法
    rest-framework之响应器(渲染器)
  • 原文地址:https://www.cnblogs.com/chengdabelief/p/9179681.html
Copyright © 2020-2023  润新知