如果Android有可能有JVM,那么字节码应该在Android上运行吗?

时间:2016-03-02 07:25:35

标签: java android

我在Stack Overflow上阅读了很多链接,但我很困惑。 Java是独立于平台的;那为什么不能在Android操作系统上运行字节码?

如果Android OS(在移动设备上)可能有 JVM ,那么字节代码应该在Android上运行。

1 个答案:

答案 0 :(得分:3)

简答:不,你不能

答案很长: Android应用程序通常用Java语言编写,并在Dalvik虚拟机(DVM)中执行,这与传统的Java虚拟机(JVM)不同。 DVM由Google开发,针对移动操作系统(特别是Android平台)的特性进行了优化。

通过使用转换工具dx转换Java .class文件,Dalvik中运行的字节码从传统的JVM字节码转换为dex格式。

与DVM相反,JVM使用的是纯Java类文件。

enter image description here