精华内容
下载资源
问答
  • jdk jre jvm 的区别和联系
    千次阅读
    2020-09-20 14:53:57

    首先,我们分别对这三者进行阐述。

    JVM :英文名称(Java Virtual Machine),就是我们耳熟能详的 Java 虚拟机。它只认识 xxx.class 这种类型的文件,它能够将 class 文件中的字节码指令进行识别并调用操作系统向上的 API 完成动作。所以说,jvm 是 Java 能够跨平台的核心,具体的下文会详细说明。

    JRE :英文名称(Java Runtime Environment),我们叫它:Java 运行时环境。它主要包含两个部分,jvm 的标准实现和 Java 的一些基本类库。它相对于 jvm 来说,多出来的是一部分的 Java 类库。

    JDK :英文名称(Java Development Kit),Java 开发工具包。jdk 是整个 Java 开发的核心,它集成了 jre 和一些好用的小工具。例如:javac.exe,java.exe,jar.exe 等。

    显然,这三者的关系是:一层层的嵌套关系。JDK>JRE>JVM。

    而这三者的区别:

    1.JDK和JRE区别:在bin文件夹下会发现,JDK有javac.exe而JRE里面没有,javac指令是用来将java文件编译成class文件的,这是开发者需要的,而用户(只需要运行的人)是不需要的。JDK还有jar.exe, javadoc.exe等等用于开发的可执行指令文件。这也证实了一个是开发环境,一个是运行环境。
    2.JRE和JVM区别:JVM并不代表就可以执行class了,JVM执行.class还需要JRE下的lib类库的支持。

    总结:

    1.有JVM就可以解释执行字节码文件(.class).
    2.JVM解释执行这些字节码文件的时候需要调用类库,如果没有这些类库JVM就不能正确的执行字节码文件,JVM+类库=JRE。
    3.有了JRE就可以正确的执行java程序了,但是光有JRE不能开发Java程序,所以JRE+开发工具=JDK,有了JDK,就可同时开发,执行Java程序。
    4.JRE只能运行已经编译好的字节码文件即后缀名为.class的文件。如果只安装了JRE,没有安装JDK,是不能运行源代码的,因为没有Java编译器,JRE无法获得.class文件。

    参考文献:JDK/JRE/JVM三者的联系与区别

    更多相关内容
  • 浅谈JDKJREJVM区别联系

    万次阅读 多人点赞 2019-02-10 08:25:49
    JDK的安装目录下有一个jre目录,里面有两个文件夹binlib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib合起来就称为jre。 一、JDK JDK(Java Development Kit) 是整个JAVA的...

    关键字:JDK,JRE,JVM
    摘要:JDK是 Java 语言的软件开发工具包(SDK)。在JDK的安装目录下有一个jre目录,里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib合起来就称为jre。

    一、JDK
    JDK(Java Development Kit) 是整个JAVA的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具(javac/java/jdb等)和Java基础的类库(即Java API 包括rt.jar)。
    JDK是java开发工具包,基本上每个学java的人都会先在机器 上装一个JDK,那他都包含哪几部分呢?在目录下面有 六个文件夹、一个src类库源码压缩包、和其他几个声明文件。其中,真正在运行java时起作用的 是以下四个文件夹:bin、include、lib、 jre。有这样一个关系,JDK包含JRE,而JRE包 含JVM。

          bin:最主要的是编译器(javac.exe)
          include:java和JVM交互用的头文件
          lib:类库
          jre:java运行环境
    

    (注意:这里的bin、lib文件夹和jre里的bin、lib是 不同的)

    总的来说JDK是用于java程序的开发,而jre则是只能运行class而没有编译的功能。

    二、JRE

    JRE(Java Runtime Environment,Java运行环境),包含JVM标准实现及Java核心类库。JRE是Java运行环境,并不是一个开发环境,所以没有包含任何开发工具(如编译器和调试器)
    JRE是指java运行环境。光有JVM还不能成class的 执行,因为在解释class的时候JVM需要调用解释所需要的类库lib。 (jre里有运行.class的java.exe)
    JRE ( Java Runtime Environment ),是运行 Java 程序必不可少的(除非用其他一些编译环境编译成.exe可执行文件……),JRE的 地位就象一台PC机一样,我们写好的Win64应用程序需要操作系统帮 我们运行,同样的,我们编写的Java程序也必须要JRE才能运行。

    三、JVM

    JVM(Java Virtual Machine),即java虚拟机, java运行时的环境,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。针对java用户,也就是拥有可运行的.class文件包(jar或者war)的用户。里面主要包含了jvm和java运行时基本类库(rt.jar)。rt.jar可以简单粗暴地理解为:它就是java源码编译成的jar包。Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。这就是Java的能够“一次编译,到处运行”的原因。

    四、JDK、JRE、JVM三者的联系与区别

    1.三者联系
    JVM不能单独搞定class的执行,解释class的时候JVM需要调用解释所需要的类库lib。在JDK下面的的jre目录里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib和起来就称为jre。JVM+Lib=JRE。总体来说就是,我们利用JDK(调用JAVA API)开发了属于我们自己的JAVA程序后,通过JDK中的编译程序(javac)将我们的文本java文件编译成JAVA字节码,在JRE上运行这些JAVA字节码,JVM解析这些字节码,映射到CPU指令集或OS的系统调用。

    2.三者区别
    a.JDK和JRE区别:在bin文件夹下会发现,JDK有javac.exe而JRE里面没有,javac指令是用来将java文件编译成class文件的,这是开发者需要的,而用户(只需要运行的人)是不需要的。JDK还有jar.exe, javadoc.exe等等用于开发的可执行指令文件。这也证实了一个是开发环境,一个是运行环境。
    b.JRE和JVM区别:JVM并不代表就可以执行class了,JVM执行.class还需要JRE下的lib类库的支持,尤其是rt.jar。

    参考文献:http://playkid.blog.163.com/blog/static/56287260201372113842153/
    https://baike.baidu.com/item/JVM/2902369?fr=aladdin

    展开全文
  • JDKJREJVM区别联系

    千次阅读 2022-02-06 15:46:03
    jdk 是整个 Java 开发的核心,它集成了 jre 一些好用的小工具。例如:javac,java,javadoc,jar 等。 JRE JRE:Java Runtime Environment,Java 运行时环境,主要包含两个部分,jvm 的标准实现 Java 的一些...

    JDK

    JDK:Java Development Kit,Java 开发工具包。jdk 是整个 Java 开发的核心,它集成了 jre 和一些好用的小工具。例如:javac,java,javadoc,jar 等。

    JRE

    JRE:Java Runtime Environment,Java 运行时环境,主要包含两个部分,jvm 的标准实现和 Java 的一些基本类库。它相对于 jvm 来说,多出来一部分的 Java 类库。

    JVM

    JVM:JAVA Virtual Machine,jvm 是 Java 能够跨平台的核心,实现一次编写,多处运行(write once,run anywhere)

    三者关系可用如下图表示(图片转自公众号:狂神说):

     

    JDK、JRE、JVM区别与联系

    这三者的关系是:一层层的包含关系。JDK>JRE>JVM

    在JDK下面的的jre目录里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib和起来就称为jre。JVM+Lib=JRE。总体来说就是,我们利用JDK(调用JAVA API)开发了JAVA程序后,通过JDK中的编译程序(javac)将我们的文本java文件编译成JAVA字节码,在JRE上运行这些JAVA字节码,JVM解析这些字节码,映射到CPU指令集或OS的系统调用。

    区别: JDK和JRE一个是开发环境,一个是运行环境。在bin文件夹下会发现,JDK有javac.exe而JRE里面没有,javac指令是用来将java文件编译成class文件的,这是开发者需要的,而用户(只需要运行的人)是不需要的。JDK还有jar.exe, javadoc.exe等等用于开发的可执行指令文件。 JVM不能单独搞定class的执行,解释class的时候JVM需要调用解释所需要的类库lib。

     

    展开全文
  • jdkjrejvm区别

    2022-07-28 11:48:22
    jdk中的javac.exe编译工具将java代码编译成xxx.class文件(字节码文件),jvm执行class文件(能够将class文件中的字节码指令进行识别并调用操作系统上的API完成动作,也就是调汇编指令,让cpu按照汇编指令去干活)。...

    在这里插入图片描述

    1、jvm:

    Java 虚拟机。jdk中的javac.exe编译工具将java代码编译成xxx.class 文件(字节码文件),jvm执行class文件(能够将 class 文件中的字节码指令进行识别并调用操作系统上的 API 完成动作,也就是调汇编指令,让cpu按照汇编指令去干活)。也正因为class文件和jvm所以才能跨平台,因为不同的平台有不同的jvm(可以自己去安装),但无论在哪个平台上运行,jvm所执行的class文件都是一样的(打包其实就是编译,并把编译后的文件以jar或war的形式分离出来,以便部署),所以能跨平台

    2、jre:

    Java 运行时环境。它主要包含两个部分,jvm和 Java 的一些基本类库。它相对于 jvm 来说,多出来的是一部分的 Java 类库。也就是说如果只是想运行java程序而不开发的话,安装jre就够了

    3、jdk:

    Java 开发工具包。jdk 是整个 Java 开发的核心,它集成了 jre 和一些好用的小工具。例如:javac.exe,java.exe,jar.exe,javap.exe等。所以每次安装jdk时只安装jdk就够了,不需要安装jre,因为jdk包含jre。工具的目录如下:

    展开全文
  • jvmjre的一部分,jvm是虚拟出的一台计算机,这台计算机不关心java源代码如何写的,它只关心java源程序编译出的字节码文件,jvm是java程序能实现跨平台的核心,它不关心真实计算机,也不关心操作系统等等,就像一个...
  • JDK和JRE和JVM区别

    千次阅读 2022-02-15 18:38:03
    1. JDK JDK(Java SE Development Kit),Java标准的开发包,提供了编译、运行Java程序所需要的各种...需要安装JRE来运行Java程序即可,而作为一名程序员必须安装JDK,来编译、调试程序。 3. JVM JVM(Java Vi
  • JVMJDKJRE区别

    2022-07-07 17:59:55
    JVMJDKJRE区别
  • 本文主要介绍了Java中的JDKJREJVM的相关知识。具有很好的参考价值,下面跟着小编一起来看下吧
  • 点击上方关注 “终端研发部”设为“星标”,你一起掌握更多数据库知识首先说说JDKJDK(Java Development Kit) 是 Java 语言的软件开发工具包(SDK)。在JD...
  • JDK JRE JVM区别

    千次阅读 2021-11-25 22:05:16
    JDK JRE区别JDK 全称 Java开发工具包 JDK=JRE+Java开发工具(javac java javadoc等) 开发者 javac 编译 java 运行 JDK 是提供给Java开发人员使用的,其中包含了Java的开发工具,..
  • JDKJREJVM区别

    2021-09-26 09:35:32
     JDK(Java SE Development Kit),Java标准开发包,它提供了编译、运行Java程序所需的各种工具资源,包括Java编译器、Java运行时环境,以及常用的Java类库等。 二、JRE  JRE( Java Runtime Environment) 、Java...
  • 你说你是做java开发的,你不知道JDKJREJVM区别就说不过去了吧
  • JDKJREJVM有什么区别
  • JDKJREJVM是什么?

    2020-12-22 00:46:48
    JDK(java Development Kit):java 的开发运行环境,包括java 的开发工具 jre,在程序员的电脑上当然要安装JDKJRE(Java Runtime Environment):它是Java运行环境,包括,java 运行的所需的类库+JVM(java ...
  • 简单的说JDK是用于开发的而JRE是用于运行Java程序的。JDK和JRE都包含了JVM,从而使得我们可以运行Java程序。JVM是Java编程语言的核心并且具有平台独立性。
  • JDKJREJVM区别以及JVM详解

    千次阅读 2022-05-26 00:39:16
    JdkJreJvmJvm详解 1、Jdk Jdk(Java development kit): Jdk是Java语言的软件开发工具包,是Java程序开发的核心所在。程序员如果需要学习Java语言的相关编程,都需要搭建好安装好JdkJdk中包含了Java的运行...
  • JDK JRE JVM区别联系1、JDK2、JRE3、JVM4、总结5、拓展 如下图所示: 1、JDK -JDK(Java SE Development Kit),Java标准开发包 -提供了编译、 运行 Java程序所需的各种工具资源 -包括Java编译器、Java运行时...
  • 当然,如果还想编译 Java 程序,搞搞小开发的话,JRE 是明显不够了,这时候就需要 JDK。 其实啊,JDK 就是 JRE 加上一些常用工具组成的。JDK 不仅能运行已经被编译好了的 Java 程序,还能支持我们编译 Java 程序
  • 工作这么久,好多时间都在研究一些并发、多线程、分布式、框架等这些东西,但是前几天突然被人问到jdkjrejvm区别联系,瞬间觉得一脸懵逼,感觉还是有必要重新整理一下一些比较基本的java知识了。 1. 定义 ...
  • 其实他们三个的区别从他们的英文全称就可以看出来。 JDK:Java Development ...他们三者是一个包含的关系,JDK最大向下包含JREJRE又向下包含JVMJVM:就是java虚拟机,负责将class文件解释成机器码来运行 JRE:包含
  • JDKJREJVM区别和联系

    千次阅读 2022-04-08 23:25:52
    目录 从安装目录结构来看 JDK:java Development Kit ...在这里可以认为 bin 就是 JVM,lib 则是 JVM 工作所需要的类库,JVM lib 合起来就称为 JRE ; JRE 开发工具合起来就是 JDKJDK:java D
  • 对于一个java程序的开发者而言,jdkjrejvm...3.在jdk里面包括了jre(java运行环境)和jvm(java虚拟机) 4.在jdk(java开发工具包)上安装的是我们智能化的java语言集成开发工具 (idea,Eclipse) =细讲一下三者的概
  • JVM, JRE, JDK区别

    2022-05-17 14:59:57
    Java Development Kit (JDK) 是用于开发 Java 应用程序小程序的软件开发环境。它包括 Java 运行时环境 (JRE)、解释器/加载器 (Java)、编译器 (javac)、归档器 (jar)、文档生成器 (Javadoc) 以及 Java 开发所需的...
  • JDK,JRE,JVM三者的区别

    2020-12-06 16:26:19
    JDK,JRE,JVM三者的区别 jdk里面的jrejdk外面的jre区别: 相同点:这两个JRE都可以作为开发Java程序的运行环境。 不同点:JDK里面的JREJDK自带的为其开发工具提供运行环境的JREJDK自带的开发工具只能使用JDK...
  • JDKJREJVM联系区别

    千次阅读 2020-04-29 23:18:38
    JDKJREJVM的关系 a.JDK Java开发的核心(java development kit) JDK是Java开发工具包,是整个Java开发的核心,包括了Java运行环境JRE、Java工具(javac.exe,java.exe,jar.exe 等)Java基础类库。 b.JRE ...
  • 初步学习java,见到JDK,JRE,JVM一头雾水,通过参考书本博客对三者有了如下的一个初步认识 JDK(java development kit):编译环境。Java 开发工具包。JDK是整个 Java 开发的核心,它集成了 JRE和一些好用的小...
  • JVMJREJDK之间的联系区别

    千次阅读 2022-04-19 16:13:24
    JVMJREJDK之间的联系区别 JVM (Java Virtual Machine) JVM(Java虚拟机)是一个可执行Java字节码的虚拟机进程,用于解析编译后的字节码文件。 JVM屏蔽了与操作系统平台相关的信息,可以把字节码解释成具体...
  • JDK( Java Development Kit ),Java开发工具包; JRE( Java Runtime Environment ),Java运行环境; JVM( Java Virtual Mechinal ),Java虚拟机。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 107,698
精华内容 43,079
热门标签
关键字:

jdk jre jvm 的区别和联系