JDK,JRE,JVM的联系
JDK的全英文是java development kit,就是java开发工具的意思,是提供给开发人员来用的;
JRE是java runtime environment ,是java运行时环境,是提供给运行java程序的用户来用的,也就是说谁需要运行java程序,谁就要安装JRE,不像我们开发人员必须要安装JDK,单纯的想运行java程序的话只需安装JRE就可以了。
JVM属于虚拟机,用来解释编译.Class文件,解释成机械码,然后让操作系统可以执行。
我理解的是jvm和lib类库,也就是开发工具包(如jar文件)组合在一起实际上就是JRE;
JRE 和Java工具,比如说javac,java,jconsole(接康搜)等工具组成了JDK。
所以说 JDK包含了JRE,JRE又包含了JVM。
然后再简单说一下过程:我们开发好的源码文件也就是.java文件,由java工具中的javac编译成.class文件,然后.class文件放在JVM上面,JVM由windos版本的,也有linux版本的,这个就是java所谓的一处编译到处运行的原因,其实就是因为jvm由不同的版本,适配了很多操作系统,所以一份相同的.class文件不管是放到哪都可以运行。JVM在拿到.class文件之后,会根据lib目录的类库解释class文件,翻译成机械码,映射到操作系统,然后调用操作系统让程序正常跑起来。