1.JRE,JDK,JVM的联系
很多初学者刚开始的时候分不清楚JDK,JRE,和JVM,我们下面将会详细的讲述这三个概念
JDK(Java development kit)Java开发工具包,里面里面已经包含JRE和JVM,本工具主要是为了Java开发者所用,调试运行程序、
JRE(Java runtime environment)Java运行时环境,里面包含JVM和Java运行时所需要的一些类库等环境,如果想要运行Java程序只需要有JRE即可。
JVM(Java virtual machine)Java虚拟机,实际上Java虚拟机就是计算机上装的一台虚拟计算机。SUn公司制订了JVM的统一标准,指令集,寄存器,类文件的格式,栈,垃圾回收堆,存储区。正是由于JVM的存在使得Java运行与平台无关。JVM加上运行Java程序所必需的一些类库,就相当于JRE
2.Java的平台无关性
我们运行完上一章节的程序,发现多出一个HelloWorld.class正是由于.class文件和JVM的存在,才使得Java的跨平台性成为可能
在运行程序过程中,首先javac 将*.java文件编译成*.class字节码文件,然后不同平台下的虚拟机解释执行.class字节码文件。
JVM的重要作用就是加载并执行class字节码。如果想深入的了解,当Java学到一定基础的时候可以看一下深入JVM这本书,这本书详细介绍了Java的运行原理。