首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >android dalvik vm是副本还是与java vm分开的vm?

android dalvik vm是副本还是与java vm分开的vm?
EN

Stack Overflow用户
提问于 2011-12-07 08:23:40
回答 2查看 110关注 0票数 0

由于最近甲骨文和谷歌之间的争执,我很想知道dalvik vm是否真的是java的副本,vm....google说它是一种净室技术,并不涉及java vm。那为什么要用java生成字节码呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-12-07 09:06:35

与直觉相反的是,Java VM不能解释Java。它解释由编译器产生的Java字节码(来自Java源代码,或者可能来自其他语言)。字节码本身在设计时就考虑到了Java的一般思想,但它不一定要从Java中产生。类似地,Java编译的结果不必是Java字节码。它可以是CPU的本机指令,也可以是其他格式的字节码。

后者就是Dalvik的情况。

Dalvik VM以自己的格式解释字节码。Android SDK附带了一个Java编译器,可以读取Java源代码并输出Dalvik字节码。所以不,Java VM不是。这是一个VM,源代码的语言恰好是Java。

票数 2
EN

Stack Overflow用户

发布于 2011-12-07 08:49:30

它不是jvm -它是从java样式语法编译而来的……所以java开发人员可以轻松地编码和学习……但在机器级别上,这是一种完全不同的语言。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8408842

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档