微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java – 我对JDK,JRE和JVM的理解

经过深入分析,这是我对JDK,JRE和JVM的理解.
如果我错了请纠正我…

> JVM是JRE的子集,JRE是JDK的子集.
> JVM用于通过使用JRE将字节代码(* .class)转换为目标代码(机器代码).
> JRE具有操作系统(OS)指定DLL,JVM使用该字节代码进行对象代码转换.
>如果明天假设任何新操作系统将启动,则当前可用的JRE可能不支持JVM以获取字节代码以进行机器代码转换.因此,JRE可能需要增强对新即将推出的操作系统的支持.
>所以从上面我的分析我得出的结论就像JVM对于所有操作系统都是通用的,但是JRE具有操作系统特定的DLL,JVM将在字节代码中使用它来进行目标代码转换.

解决方法

JVM是虚拟的,您可以将其视为虚拟计算机,其机器代码Java字节码.它不是真正的计算机,而是可以执行Java字节码指令的虚拟计算机.

JRE是JVM实现.该实现是特定于操作系统的(当然),但它提供独立于操作系统的外部接口(意味着您可以在Windows JRE和Linux JRE上运行相同的Java代码).从90年代后期开始,这就是“一次编写一次运行”的事情.

JDK是编写Java代码所需的编译器,JRE,其他工具和所有Java API.

我不想将Android及其Dalvik VM添加图片中(虽然我可以画出一些有趣的相似之处),因为我会更加困惑你.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐