Java 语言的开发运行,离不开 Java 语言的运行环境 JRE。没有 JRE 的支持,Java 语言便无法运行。当然,如果还想编译 Java 程序,小项目开发的话,JRE 是明显不够了,这时候就需要 JDK。

其实,JDK 就是 JRE 加上一些常用工具组成的。JDK 不仅能运行已经被编译好了的 Java 程序,还能支持我们编译 Java 程序(JDK=JER+各种工具)。

JDK,JVM 和 JRE,那他们三个有什么区别呢?又有什么联系呢?

JDK(Java Development Kid,Java 开发开源工具包),是针对 Java 开发人员的产品,是整个 Java 的核心,包括了 Java 运行环境 JRE、Java 工具和 Java 基础类库。

JRE(Java Runtime Environment,Java 运行环境)是运行 JAVA 程序所必须的环境的集合,包含 JVM 标准实现及 Java 核心类库。

JVM(Java Virtual Machine,Java 虚拟机)是整个 Java 实现跨平台的最核心的部分,能够运行以 Java 语言写作的软件程序。

所以说大家看出来三者的关系了吗?其实如下图所示:


由上图得知:
JDK=JRE+多种Java开发工具
JRE=JVM+各种类库
这三者的关系是一层层的嵌套关系。JDK>JRE>JVM

Java中JVM、JRE和JDK三者有什么区别和联系?相关推荐

  1. 3.Java中JVM, JRE和JDK的关系是什么?

    3.Java中JVM, JRE和JDK的关系是什么? JVM(Java Virtual Machine),Java虚拟机 JRE(Java Runtime Environment),Java运行环境, ...

  2. Java教程:Java中JVM、JRE和JDK三者有什么区别和联系?

    本篇文章由 泉州SEO www.234yp.com 整理发布,Java教程 www.234yp.com/Article/198121.html 谢谢合作! Java教程任何语言或者软件的运行都需要环境 ...

  3. 形式参数内存在哪java_深入浅出Java中JVM内存管理

    原标题:深入浅出Java中JVM内存管理 Java岗位面试,JVM是对程序员基本功考察,通常会问你对JVM了解吗?可以分几部分回答这个问题,首先JVM内存划分 | JVM垃圾回收的含义 | 有哪些GC ...

  4. JVM ,JRE和JDK的关系

    JVM,JRE和JDK的关系 JVM(Java Virtual Machine) JYM就是一个虚拟的用于执行bytecode字节码的"虚拟计算机". Java语言的一个非常重要的 ...

  5. JAVA中JVM的重排序详细介绍(写得很明白)

    刚刚在研究volatile变量的时候,涉及到重排序的概念,于是发现了这篇很好的文章,写得很简短很明白.所以转载一下. 原文地址:JAVA中JVM的重排序详细介绍 原文贴出来: 重排序通常是编译器或运行 ...

  6. Java中JVM的xmx和xms配置成一样的好处

    Java中JVM的-Xmx和-Xms配置成一样有什么好处 文章目录 Java中JVM的-Xmx和-Xms配置成一样有什么好处 一.`-Xmx`和`-Xms` 二.设置`-Xmx` 的注意点 三.-Xm ...

  7. Java中,一切皆是对象——java中的对象类型与基本数据类型的区别

    起因:取一个list给另一个list赋值,然后在另一个list中取出进行修改.list其中类型为对象时,String时,基本数据类型时. [java中的对象类型与基本数据类型的区别] #声明和实例化 ...

  8. java堆和栈 常量池_GitHub - han-guang-xue/difference-of-stack-heap-pool: Java中堆、栈和常量池的区别...

    Java中堆.栈和常量池的区别 栈 堆 常量池的概念 首先我们先了解一下概念,Java把内存分成两种,一种叫做栈内存,一种叫做堆内存. 栈内存 存放基本类型的变量数据和对象类型的引用(请注意存放的是引 ...

  9. java中list,set,map集合的区别,及面试要点

    Map集合:链接: Map集合的五种遍历方式及Treemap方法 Set集合:链接: Java中遍历Set集合的三种方法 TreeSet集合:链接: Java深入了解TreeSet,和迭代器遍历方法 ...

最新文章

  1. MySQL 源码 需要 什么基础_MySQL 基础之 源码 部署
  2. C++知识点40——运算符的重载概念与分数类实现(中)
  3. 华为鸿蒙无gms,无缘华为鸿蒙系统!荣耀手机海外官宣,全面拥抱谷歌服务
  4. 在iview项目中添加echarts3
  5. spring连数据库的配置文件(applicationContext.xml)
  6. 哈希表(hashtable)的javascript简单实现
  7. ora-30926:无法在源表中获得一组稳定的行
  8. 局部光照与全局光照的区别
  9. DTCC参会归来有感
  10. 上海财经应用统计考python_20上财应用统计415分经验帖(初试第一)
  11. 计算机控制系统总线,计算机控制系统功能之现场总线控制-电脑自学网
  12. php做一个文章页面,wordpress主题制作教程(十):制作文章单页模板single.php
  13. Django 项目编码问题1UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xd2 in position 0: invalid contin
  14. 安卓街机模拟器对战源码修改详解(1)
  15. 计算机程序设计员初级pdf,计算机程序设计员(实摩)国家职业标准.pdf
  16. 如何让我的应用自动填写短信验证码?
  17. 如何将记事本中的.txt文件转为.csv文件
  18. 变色龙嗅探卡功能_变色龙功能
  19. Ubuntu kylin优麒麟root用户与静态网络设置
  20. 美国TIKTOK小店申请条件

热门文章

  1. java https双向验证_java https双向认证证书
  2. c语言调用createthread线程的头文件_易语言API多线程总汇
  3. java的svn插件maver_项目版本管理工具---MAVENSVN
  4. 中关村Win11 32位微软原版ISO V2021.08
  5. 新萝卜家园windows11 64位官网正版系统v2021.07
  6. 傲游浏览器语言怎么切换 傲游浏览器语言切换方法简述
  7. 谷歌浏览器flash崩溃怎么办 Google Chrome flash崩溃解决方法
  8. 如何在Unity3d平台下低延迟播放RTMP或RTSP流
  9. 了解与防御XSS攻击
  10. 学习Spring Boot:(二十四)多数据源配置与使用