因为Java程序编译之后的代码不是能被硬件系统直接运行的代码,而是一种“中间码”——字节码。然后不同的硬件平台上安装有不同的Java虚拟机(JVM),由JVM来把字节码再“翻译”成所对应的硬件平台能够执行的代码。因此对于Java编程者来说,不需要考虑硬件平台是什么。所以Java可以跨平台。
因为他所有的 玩意儿都是建立在 虚拟机上的啊, 比如我们windows上要装windows版本的jdk,在linux上要装linux版本的jdk,jdk就是虚拟机吧,有了运行环境当然能运行咯,
所以其实java并不是真正的跨平台,只是 在所有平台中都创建了一个统一的运行环境