首页 > 其他分享 >什么是JDK、JRE、JVM? 它们的关系是什么?

什么是JDK、JRE、JVM? 它们的关系是什么?

时间:2023-11-17 14:32:48浏览次数:36  
标签:JRE Java JDK 编译器 JVM 运行

JDK(Java Development Kit)、JRE(Java Runtime Environment)和JVM(Java Virtual Machine)是与Java编程语言相关的关键概念,它们之间存在一定的层次关系。

  1. JDK(Java Development Kit):
  • JDK是Java开发工具包,提供了Java开发所需的工具和资源。
  • 包括Java编译器(javac)、Java虚拟机(JVM)、Java调试器等开发工具,以及Java标准库和其他支持文件。
  • JDK是面向Java开发人员的,用于编写、编译和运行Java应用程序。
  1. JRE(Java Runtime Environment):
  • JRE是Java运行时环境,用于在计算机上运行Java程序。
  • 包括Java虚拟机(JVM)和Java类库,但没有用于Java开发的编译器和其他开发工具。
  • JRE是面向普通用户和终端用户的,用于执行Java应用程序,而不涉及实际的Java开发。
  1. JVM(Java Virtual Machine):
  • JVM是Java虚拟机,是Java程序的运行环境,负责解释和执行Java字节码。
  • Java源代码通过编译器编译成字节码,而JVM负责在目标平台上运行这些字节码。
  • JVM提供了内存管理、垃圾回收和其他运行时支持,使得Java程序能够在不同平台上实现一次编写,到处运行的特性。

关系:

  • JDK包含JRE,因为JDK不仅提供了Java运行时环境(JRE)的功能,还包含了用于Java开发的编译器(javac)等工具。
  • JRE包含JVM,因为JVM是Java程序的运行时环境,而JRE提供了运行Java程序所需的Java虚拟机和Java类库。

简而言之,JDK是完整的Java开发工具包,包括JRE和其他开发工具,而JRE是用于运行Java程序的运行时环境,其中包括JVM和Java类库。

标签:JRE,Java,JDK,编译器,JVM,运行
From: https://blog.51cto.com/u_14540126/8445541

相关文章

  • JDK 版本对照 versions
    JDKversion和classfileversion(Class编译版本号)对应关系  JDK17=61,  JDK16=60,  JDK15=59,  JDK14=58,  JDK13=57,  JDK12=56,  JDK11=55,  JDK10=54,  JDK9=53,  JDK8=52,  JDK7=51,  J......
  • JDK 推荐的线程关闭方式
    JDK在线程的Stop方法时明确不得强行销毁一个线程,要优雅的退出线程。何谓优雅退出线程,即业务将进行中请求正确被处理,取消待执行请求,执行资源回收,最终 ThreadRunablerun 方法return结束执行。首先问为什么要退出一个线程,再提问如何退出一个线程1需要线程退出的常见场景......
  • JDK系列---【linux系统脚本快速安装JDK】
    1.install.shtar-zxvfjdk8.tar.gzmvjdk8u201jdk8#查看是否系统自带openjdkrpm-qa|grepjava#卸载自带openjdkrpm-etadata-java-2022a-1.el8.noarchjavapackages-filesystem-5.3.0-1.module+el8+2447+6f56d9a6.noarchjava-1.8.0-openjdk-headless-1.8.0.322.b06-11.......
  • 关于JVM调优
    背景在Java岗位的面试中经常遇到JVM调优的考题,作为技术爱好者,常考肯定是要学的嘛。什么时候应该进行JVM调优大多数的Java应用不需要GC调优。大部分需要GC调优的,不是GC配置参数的问题,而是代码的问题。在实际使用中,通过分析GC情况优化代码比优化GC参数更普遍。GC调优是最后的......
  • 记录jdk17相对于jdk8增加的一下主要语法糖和新特性
    jdk17发布已经好久了,作为java的长期支持版本,引入了许多有趣且实用的新特性。这些特性不仅提高了开发效率,还增强了语言的表现力和安全性。并且是SpringBoot3.0以后版本的硬性要求,之后势必会是java开发的主要版本。经过我个人的测试体验,在Java17环境中运行使用早期Ja......
  • 【Windows】Java开发环境基础配置(JDK+Maven+IDEA)
    JDK下载安装包前往JDK官方网站,单击x64Installer后的下载链接,加载JDK19.0.2安装包。双击运行jdk-19_windows-x64_bin.exe。下一步,在如下步骤记录下安装路径,然后下一步直到完成。在C:\ProgramFiles\Java\jdk-19\下即可看到已安装的JDK文件。配置环境变量Windows桌面搜索......
  • 【转】JDK8 升级 JDK11 最全实践干货来了 | 京东云技术团队
    原文地址:JDK8升级JDK11最全实践干货来了|京东云技术团队作者:京东云开发者1.前言截至目前(2023年),Java8发布至今已有9年,2018年9月25日,Oracle发布了Java11,这是Java8之后的首个LTS版本。那么从JDK8到JDK11,到底带来了哪些特性呢?值得我们升级吗?而且升级过程会......
  • 【转】JDK11 升级 JDK17 最全实践干货来了 | 京东云技术团队
    原文地址:JDK11升级JDK17最全实践干货来了|京东云技术团队原文作者:京东云开发者1.前言上篇文章给大家带来了JDK8升级JDK11的最全实践,相信大家阅读后已经对JDK11有了比较深入的了解。2021年9月14日,Oracle发布了可以长期支持的JDK17版本,那么从JDK11到JDK17,......
  • JDK下载安装
    jdk8下载安装步骤一、下载jdk下载地址:JavaDownloads|Oracle选择需要下载的版本即可,下载需登录oracle帐户,注册一个帐号即可二、安装安装前提:简单介绍下jdk与jre的区别JDK:JavaDevelopmentKit是Java的标准开发工具包(普通用户只需要安装JRE来运行Java程序。而程序开发者必须安......
  • JVM之垃圾回收算法
    1.概述在JVM中,最大的亮点就是自动垃圾回收机制,那它是根据什么依据来判断是垃圾的呢,又是根据什么算法来回收垃圾的呢?不同的垃圾回收算法有不同的特点和应用场景,本文整理了JVM常见的几种垃圾回收算法,以及其优缺点和适用场景供读者参考。不熟悉JVM内存模型的可先参考如下这篇文章(......