首页 > 其他分享 >JDK、JRE、JVM之间的区别

JDK、JRE、JVM之间的区别

时间:2024-11-12 11:11:21浏览次数:1  
标签:JRE Java JDK 虚拟机 JVM 运行

 

  1. JVM(Java Virtual Machine,Java虚拟机): -JVM是Java程序的运行平台,它是一种抽象化的计算机,可以将编译后的Java字节码(.class文件)转换为特定操作系统能够执行的机器码。
  • 它负责管理内存分配、垃圾回收、线程管理等底层服务,使得Java具有“一次编写,到处运行”的跨平台能力。
  1. JRE(Java Runtime Environment,Java运行时环境):
  • JRE是运行Java程序所必需的环境,包含了JVM以及Java类库、基础模块等运行时所需的组件。
  • 对于只想运行Java应用程序的最终用户来说,只需安装JRE,无需完整的开发工具。
  • JRE确保了Java程序可以在任何安装了相应版本JRE的设备上运行,而无需关心底层操作系统。
  1. JDK(Java Development Kit,Java开发工具包): -JDK是为Java开发者提供的一个全面的软件开发包,它包含了JRE,同时加入了开发工具,比如编译器(javac)、调试器(jdb)、文档生成器(javadoc)等。 -开发者需要JDK来编写、编译、调试和打包Java应用程序或库。
  • 简单来说,JDK = JRE + 开发工具集。

JVM指的是Java的虚拟机,Java程序需要运行在虚拟机上,不同的平台都有自己的虚拟机,所以Java语言实现了跨平台。

JRE指的是Java的运行时环境,包括需要的大量的类库和Java的虚拟机。

JDK指的运行时候的需要的一些工具类和运行时环境,比如包括javac.exe ,javadoxc.exe 一系列用于编译字节码工具 打包文档的工具

关系总结:

  • 层次结构上,JDK包含JRE,JRE中则包含了JVM。
  • 功能定位上,JDK服务于开发,JRE服务于运行,而JVM是运行Java程序的核心,负责解释执行字节码。

标签:JRE,Java,JDK,虚拟机,JVM,运行
From: https://www.cnblogs.com/2324hh/p/18541447

相关文章

  • JDK、JRE、JVM之间的区别
     JVM(JavaVirtualMachine,Java虚拟机):-JVM是Java程序的运行平台,它是一种抽象化的计算机,可以将编译后的Java字节码(.class文件)转换为特定操作系统能够执行的机器码。它负责管理内存分配、垃圾回收、线程管理等底层服务,使得Java具有“一次编写,到处运行”的跨平台能力。JRE......
  • JVM 参数配置入门与优化案例
    文章目录JVM参数配置入门与优化案例基础内存参数配置堆内存(HeapMemory)元空间(Metaspace)新生代与老年代比例直接内存(DirectMemory)垃圾回收器(GC)设置OOM异常分析设置GC日志设置实战配置案例:Netty服务配置总结与优化建议JVM参数配置入门与优化案例在Java应用的......
  • Java概述与第一个程序,及JDK环境的安装
    开始学习java,我们需要对java有一个基本的了解,以及设置相关的开发环境一.为什么选择JavaJava有一个显著的优势就是用途广泛服务器后端:银行,证券交易平台,电子商务后台....Android应用:安卓手机,各种移动设备,智能家电…大数据技术:Hadoop以及其他大数据处理技术都是......
  • Linux安装jdk
    Linux安装jdk下载JDK安装包前往Oracle官网或其他JDK发行版网站,下载适合Linux系统的JDK安装包(可执行命令lscpu,查看Architecture字段确定)。创建安装目录在/usr/local目录下创建用于存放JDK安装包的目录,例如/usr/local/javasudomkdir/usr/local/javacd/usr/local/java上......
  • jvm之垃圾收集器
    首先总结下垃圾收集器都有哪些:回收年轻代的垃圾收集器:Serial、ParNew、ParallelScavenge。回收老年代的垃圾收集器:CMS、SerialOld、ParallelOld。同时回收老年代和年轻代的:G1。没有一个收集器可以作用于所有的应用场景,只有具体应用选择具体合适的收集器,正是因为如此才......
  • JVM 进阶:深入理解与高级调优
    在学习了JVM的基础知识后,接下来我们将深入了解JVM的内部工作原理、高级优化方法和性能调优技巧,这些内容将帮助你更好地管理Java应用的性能,尤其是在面对大规模应用和高并发场景时。一、深入了解JVM内存结构JVM内存结构的划分和管理直接关系到Java程序的运行效率,深......
  • 常用的 jvm 调优的参数都有哪些
    ​  堆内存设置-Xms:设置JVM堆的初始大小。例如:​​-Xms2g​​表示初始堆大小为2GB。-Xmx:设置JVM堆的最大大小。例如:​​-Xmx2g​​表示最大堆大小为2GB。-XX:NewRatio:设置年轻代和老年代的比例。例如:​​-XX:NewRatio=4​​表示年轻代和老年代的比例为1......
  • 常用的 jvm 调优的参数都有哪些
       ​ 堆内存设置-Xms:设置JVM堆的初始大小。例如:​​-Xms2g​​表示初始堆大小为2GB。-Xmx:设置JVM堆的最大大小。例如:​​-Xmx2g​​表示最大堆大小为2GB。-XX:NewRatio:设置年轻代和老年代的比例。例如:​​-XX:NewRatio=4​​表示年轻代和老年代的比......
  • JRE的作用
    一、主要组成部分Java虚拟机(JVM):JVM是JRE的核心组件,它是一个抽象的计算机,负责将Java字节码转换为特定操作系统的机器码并执行。JVM实现了Java语言的跨平台特性,使得Java程序可以在不同的操作系统上运行,而无需进行重新编译。JVM包括类加载器、字节码校验器、解释......
  • 关于32.0.0-jre版本的Guava版本是否兼容1.8版本的jdk问题
    在个依赖升级的过程中,snyk建议我将guava升级到32.0.0-jre这个版本,最后测试出来这个版本的guava只能部分兼容jdk1.8;查看guava版本兼容jdk的版本,可以通过以下方式:1.windows下,按win+r输入cmd进入;2.导航到JAR所在的目录,就是guava所在的路径cdC:\path\to\your\jar将C:\path......