由源文件(.java)—>字节码文件(.class)(二进制文件)-解释---Unix,Win,Linux等机器。
JDK JVM JRE 是一层层嵌套关系 JDK>JRE>JVM
Java跨平台的原理:通过java虚拟机在不同的操作系统上运行
编译器的作用:将源文件编译成class文件虚拟机的作用。将字节码文件解释成对应平台机器码并执行。Java语言的执行要经过编译和解释两个阶段。JDK是Java开发工具包,是针对Java开发员的产品。JDK是整个JAVA的核心,包括了Java运行环境JRE(Java Runtime Envirnment)、一堆Java工具(javac/java/jdb等)和Java基础的类库(即Java API 包括rt.jar)。
JRE是运行基于Java语言编写的程序所不可缺少的运行环境。JRE是Java运行环境,并不是一个开发环境,所以没有包含任何开发工具。
JVM就是我们常说的java虚拟机,它是整个java实现跨平台的最核心的部分,所有的java程序会首先被编译为.class的类文件,这种类文件可以在虚拟机上执行。
Java反编译:就是将生成的字节码文件(后缀.class)再还原为源文件(.java)