1.编写--首先咱们要编写自己的源代码,这个可以在任意文档编辑器内完成,以.java为文件名 -----无需jdk
2.编译--这个时候就要用到javac这个.exe程序了,它存在于jdk的bin目录下,并且能把.java文件编译成以.class结尾的字节码文件,此时的.class文件不同于咱们自己在源码中定义的class,它已经与源文件无关了。另外:字节码文件不是二进制文件,它是一种jvm能读懂的东西,并且这个字节码文件,在所有种类的jvm上都能运行。(小结就是:能接受相同的输入,但是输出不一样) -----只需JDK(单纯的JDK就行,不包含JRE的那种)
3.运行--运行需要java命令,执行此命令后,类加载器会去硬盘上找相关的.class文件(字节码文件),找不到就直接报错(ClassNotFoundException),找的到的话就全部都加载到jvm中,由jvm对其进行翻译,翻译成对应的操作系统能读懂的二进制文件,最后由操作系统执行并且和硬件进行交互。----只需JRE