刚上大一那会儿就是随便一个编译器写.java后缀文件,然后通过命令行JavaC编译那个.java后缀的文件生成.class文件,然后直接java XXXX.class文件就可以运行自己的Java程序。 所以知道,Java 程序执行分两个阶段,编译阶段和运行阶段: JavaC :这个命令就会启动Java的编译器去对Java后缀文件进行编译,生成字节码,也就是.class文件,这个文件是十六进制格式的,里面的内容有魔数,常量池,访问标志,类索引,字段表,方法表,属性表还有一堆操作指令。 Java:这个命令会启动JVM虚拟机去执行字节码,Java得益于跨平台,一次编写处处运行的优势就是基于JVM,只要按照规范写出编译器可以编译的代码(当然也可以自定义编译器进行解析)并且编译出字节码文件,JVM都能在任何平台上运行你写出来的代码。 下面看例子: 这是我写好的一个例子,不要管逻辑,重点看字节码操作指令。