jre 和 jdk 还有 jvm 三者之间的关系

Java的跨平台特性基于JVM,代码在任何平台上运行都是通过JVM实现。JVM是Java虚拟机,负责执行字节码文件,包括内存管理如程序计数器、栈、堆和运行时常量池等组件。JRE是Java运行环境,包含了JVM,而JDK是开发工具包,包含了JRE,用于编译和运行Java应用程序。
摘要由CSDN通过智能技术生成

jre jdk jvm :

  java中的特点之一:

         所谓的跨平台,不是java跨平台而是jvm跨平台 编写一次,处处运行的道理 可以到Windows macOS 等系统上运行

    为什么java是跨平台的 哪到底是到哪里跑的

           其实所编写完代码然后点击运行全部都是到 jvm 中跑完的的,什么Windows ,macOS Linux 都是到 jvm中跑的

     为什么java虚拟机会叫成java虚拟机呢?

           顾名思义嘛,简单的说就是看不到摸不到,能执行字节码文件的幽灵吧

        通途的 讲 jdk 是爷爷  jre 是爸爸  那jvm 那就是儿子了 有了jdk就拥有了全部。

        jdk 是开发的应用程序的工具这不用多说。jdk 包含 jre  而jre  又包含jvm(java虚拟机)

        jre 是运行class文件  不能编译文件 就只能是jvm 来编译class文件了。

 

正片:     

        上面都是废话接下来才是正片哈 !哈哈哈

    JRE(JavaRuntimeEnvironment,Java运行环境)  就是一个java平台 ,用来运行class字节码文件

    JDK(Java Development Kit)

        首先来说说 jdk我们都知道是 开发应用程序的核心 ,都知道jdk 是一个工具包 

        jdk 中包含jre  在安装jdk 中也会安装jre jdk 中的目录中有jre文件 用来存放jre的文件感兴趣的可以去看看安装的路径找找

 

2f5456a481f94b65a8c02e75c6468e0f.png

          JVM(JavaVirtualMachine,Java虚拟机)  也是jre 的一部分 是一个虚假(虚拟)的系统

                它里面包含一些 内存管理 中有: 程序计数器 寄存器本地方法栈(栈里面包含一些栈帧)这些都是私有线程、、堆 还有运行时常量池(用来存放编译的时候生成各种字面量还有符号引用)直接内存     内存管理中的方法区都是 共享线程(所以线程都可以互相使用)

          还有最重要的一点就是跨平台:jvm 就是跨平台可以到 macOS Windows Linux 郴州系统上运行

          

              如果我写错了欢迎到评论区留言,也是可以共同的进步的

 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值