`
qtlkw
  • 浏览: 307369 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

jvm jdk jre的区别与联系

    博客分类:
  • JAVA
阅读更多
1、JVM -- java virtual machine
    JVM就是我们常说的java虚拟机,它是整个java实现跨平台的最核心的部分,所有的java程序会首先被编译为.class的类文件,这种类文件可以在虚拟机上执行,也就是说class并不直接与机器的操作系统相对应,而是经过虚拟机间接与操作系统交互,由虚拟机将程序解释给本地系统执行。
虚拟机就是执行java class文件并与底层操作系统进行交互的平台。

2、JRE -- java runtime environment
    JRE是指java运行环境。光有JVM还不能成class的执行,因为在解释class的时候JVM需要调用解释所需要的类库lib。在JDK的安装目录里你可以找到jre目录,里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib和起来就称为jre。所以,在你写完java程序编译成.class之后,你可以把这个.class文件和jre一起打包发给朋友,这样你的朋友就可以运行你写程序了。(jre里有运行.class的java.exe)
JRE就是能正确执行java class字节文件的运行环境,包括JVM和运行时要用到得jar包等,但不包括javac.exe编译环境。

3、JDK -- java development kit
    JDK是java开发工具包,基本上每个学java的人都会先在机器上装一个JDK,那他都包含哪几部分呢?让我们看一下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而没有编译的功能。

      dt.jar是关于运行环境的类库,主要是swing的包
      tools.jar是关于一些工具的类库
      rt.jar包含了jdk的基础类库,也就是你在java   doc里面看到的所有的类的class文件


JDK包括编译,JRE运行时和一些java扩展jar包。
    eclipse、idea等其他IDE有自己的编译器而不是用JDK bin目录中自带的,所以在安装时你会发现他们只要求你选中jre路径就ok了。
分享到:
评论

相关推荐

    jdk、jre、jvm的区别

    ### JDK、JRE与JVM的区别详解 #### 一、引言 在深入探讨JDK、JRE与JVM之间的区别之前,我们首先需要明确这三个概念的基本定义及其各自的作用。对于初学者而言,理解这些核心组件是学习Java编程的基础。 #### 二、...

    一张图看懂JVM、JRE、JDK

    一张图看懂JVM、JRE、JDK

    jdk与jre的区别

    JDK 与 JRE 的区别 JDK(Java Development Kit)和 JRE(Java Runtime Environment)是 Java 语言的两个核心组件,它们之间存在着一定的关系和区别。下面我们将详细介绍 JDK 和 JRE 的概念、区别和关系。 JDK JDK...

    JDK、JRE、JVM是什么?

    JDK(java Development Kit):java 的开发和运行环境,包括java 的开发工具和 jre,在程序员的电脑上当然要安装JDK; JRE(Java Runtime Environment):它是Java运行环境,包括,java 运行的所需的类库+JVM(java ...

    JDK JRE与JVM1

    Java 技术体系的核心组成部分包括 JDK (Java Development Kit),JRE (Java Runtime Environment) 和 JVM (Java Virtual Machine)。理解这三个概念对于Java开发者至关重要。 首先,JDK是Java开发工具包,它是Java...

    jdk与jre的区别.

    ### JDK与JRE的区别 #### 一、JDK与JRE的基本概念 ##### JDK(Java Development Kit) JDK,即Java开发工具包,是面向开发人员使用的软件开发工具包(SDK)。它包含了编译、调试和运行Java应用程序所需的所有工具...

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

    下面将详细阐述这三个术语的区别与联系。 首先,JDK(Java Development Kit)是Java开发工具包,它是整个Java开发的核心。JDK包含了Java运行环境(JRE)、一系列Java开发工具(如javac编译器、java执行命令、jdb...

    JDK JRE 的作用与区别

    ### JDK与JRE的作用及区别 #### 一、概述 在深入探讨JDK与JRE的具体差异之前,我们首先需要了解这两个概念的基本定义及其在Java开发环境中的地位。 #### 二、JDK(Java Development Kit) JDK是Java开发工具包的...

    简单谈谈JVM、JRE和JDK的区别与联系

    Java开发工具包(JDK)、Java运行环境(JRE)和Java虚拟机(JVM)是Java编程语言的三个核心组件,它们之间有着密切的关系和明确的分工。 JDK(Java Development Kit)是Java语言的软件开发工具包,它是整个Java开发...

    JRE与JDK的区别

    Java开发和运行环境中,JRE(Java Runtime Environment)与JDK(Java Development Kit)是两个至关重要的组件。它们之间的主要区别在于用途和包含的内容。 JRE是Java运行环境,它是运行Java应用程序所必需的。它...

    jdk和jre的区别

    ### JDK与JRE的区别 #### 一、概念解析 **JDK**(Java Development Kit):作为Java开发工具包,它是面向开发人员的核心组件。它不仅包含必要的运行环境(即JRE),还提供了完整的Java软件开发环境,包括编译器...

    详解Java中的JDK、JRE、JVM

    Java开发中的JDK、JRE和JVM是三个至关重要的概念,它们构成了Java应用程序的运行基础。理解这三个术语以及它们之间的关系是每个Java开发者必备的知识。 JDK(Java Development Kit)是Java开发工具包,它是Java开发...

    Java中JDKJRE和JVM解析.doc

    ### Java中的JDK、JRE与JVM解析 #### 一、引言 在Java编程领域,JDK、JRE和JVM这三个概念是至关重要的基础知识点。虽然它们经常被提及,但很多人仍然对它们之间的关系和各自的功能感到困惑。这篇文章将深入探讨这...

    【Java面试题】JDK、JRE与JVM的区别

    【Java面试题】JDK、JRE与JVM的区别

    jdk与jre的不同

    简而言之,JDK和JRE是Java生态系统中的两个关键组成部分,它们之间存在着紧密的联系但也有所区别。对于开发者来说,需要安装JDK来进行Java程序的开发;而对于普通用户来说,则只需要安装JRE即可运行Java程序。理解这...

    AIX JDK1.8 JRE1.8 32位

    标题中的"AIX JDK1.8 JRE1.8 32位"指的是IBM的Java开发工具包(JDK)和Java运行环境(JRE)的32位版本,这两个组件都是针对AIX操作系统设计的。AIX,全称Advanced Interactive eXecutive,是IBM推出的一种基于UNIX的...

Global site tag (gtag.js) - Google Analytics