多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
一、JVM JVM(Java Virtual Machine)指可以运行的Java字节码(*.class)的虚拟机。与计算机一样,JVM有自己的指令集并且使用不同的存储区域,负责执行指令和管理内存的寄存器。Sum公司(非常牛的一个公司)为Solaris、Windows、Linux、Mac等不同的操作系统和硬件开发了不同的JVM,这样以后,字节码文件可以在不同的操作系统JVM支持下运行。 二、JRE JRE(Java Runtime Environment)面向的是Java的使用者,里面提供了Java运行环境,主要是由JVM、API类库(就是Java语言中提供的各种类,例如Object类)、发布技术三个部分组成。 综上,JRE包含了JVM。 三、JDK JDK(Java Development Kit)面向Java程序的开发者,提供了Java的开发环境和运行环境,主要是由JRE和编译、运行、调试Java应用程序的开发工具和资源包构成。(开发需要对应的JDK版本)。 其中,为了更好的适应开发的需求,Java的设计者提供了三种Java平台。 a、Java ME(Java Micro Edition):为机顶盒、移动电话、智能卡、PDA等嵌入式消费电子设备提供Java解决方案。(目前已经有点壮士暮年的感觉了) b、Java SE(Java Standard Edition):Java平台的基础,主要是用来开发桌面应用。(别名是J2SE)。(现在学习Java都需要从Java SE开始) c、Java EE(Java Enterprise Edition):Java EE在Java SE之上,主要用来构建大规模的基于Web的企业级应用和分布式网络应用程序。对于应用来说,Java EE是目前企业级应用最出色的平台和最成功的解决方案。(找工作的必备) 总算是把概念说完,接下来就是个人理解:(可以不看,但是看了有好处) 四、个人理解 对于JVM、JRE、JDK这三个概念,其实可以想成是一个由浅到深的过程。 刚开始是需要JVM去在直接运行Java文件,后来觉得太麻烦了,每次都需要一个个的去输出,为啥我不可以直接去输出捏,后面就有了JRE,可以直接在一个程序里面就直接运行出来,点击一下就可以完成自己以前几秒的工作。到后面啊,人要有志气的,不能一味的去用别人的Java程序啊,不行,我也要写自己的“Hello World!”,于是就有了JDk,可以去自己创作自己的Java程序。一起创造属于自己的程序。Good! 最终,总结;JVM就是一个可以运行Java字节码的虚拟机,JRE就是可以一个可以通过JVM的升级,更方便了,但是还是不可以自主的创作。JDK就是集开发和运行一体的Kit(成套用品)。 具体包含关系为:JDK>JRE>JVM ![](https://img.kancloud.cn/de/c0/dec08900619091f30210b043fef652b2_783x445.png)