具体来说就是你的java编译好后会产生*.class文件,这是jvm运行的文件。
不管你换了何种os或硬件,只要你的os里有jre支持。*.class文件都会在jvm里运行,而抛开了当前的os。这也是为什么java可以做到“一次编译,随处运行”的关键。