JVM和JRE及JDK

JVM : Java Virtual Machine(Java虚拟机)。所谓“虚拟机”顾名思义就是模拟出来的东西。就像是我们在用电脑看电视,但是电脑里并没有像电视机里面一样的硬件支持,但是我们仍然可以从电脑里接受电视台的节目。那是因为我们编写了一个可以模拟电视机硬件工作的软件运行在电脑的平台上面的原因。同样JVM就是模拟了电脑的硬件,它同样有着像CPU一样可以执行代码的功能。它的实现具体有:指令集 寄存器组 类文件格式 栈 垃圾收集堆 内存区。可以把它理解成是专门用来执行Java程序的一台机器。也就是说JVM提供了Java执行的硬件平台。JVM上执行的代码都存放在.CLASS文件中。JVM只执行字节码文件。

JRE : Java Runtime Environment(Java运行环境)。就是可以运行Java程序的地方。就像是我们要在电脑上运行一个视频软件的时候必须在Windos或者是Linux等操作系统上一样。那我们就可以把它看做是一个操作系统。也就是说JRE提供了Java执行的软件平台。在运行Java的过程中除了需要有JVM执行Java代码这个动作外,还需要Java API(Application Programming Interface,应用编程接口)说简单的就是“类库”。Java程序在运行中没有这些API是不行的,所以JRE包含JVM。

JDK : Java Development ToolKit(Java开发工具包)。我们有了硬件和软件两个平台后就可以做我们自己想做的事情了。JDK就是我们用来做事情的工具,它包括JRE还有其他工具。我们所说版本的不同,也就是说它里面的工具有差异。就像是你不同的工具箱里放着不同的工具一样。举个例子:最常用的一个就是javac,它是把.java的文件翻译成.class文件的工具。然后让JVM来执行.class文件中的字节码。(就像电脑的CPU只认识0或1的道理)

如果一台计算机的需求只是运行Java程序,而不是去编写Java程序的时候,它只需要安装JRE就可以了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,810评论 19 139
  • 转载blog.csdn.net/ning109314/article/details/10411495/ JVM工...
    forever_smile阅读 10,742评论 1 56
  • 前言 写这篇文章的目的: 总结所学的 JVM 知识 帮助想了解 JVM 的朋友,知无不言,言无不尽 本篇文章将会介...
    SavySoda阅读 10,477评论 11 105
  • 我一直怀疑,那些酒后耍疯的人不过是在演戏。若是拳推脚攘,其气力绝不下于平时;若是吵架喝骂,其妙语连珠,字句铿锵,酒...
    勒布朗不是德怀恩阅读 9,823评论 0 0
  • 今天上海第二轮第一场,有什么好抱怨的呢!你做的是那么喜欢的事。
    茄子就是茄子阅读 1,198评论 0 0

友情链接更多精彩内容