为什么安卓选择了JAVA?

1、C语言能编译成机器码,那即然是机器码,为什么windows环境中编译的C语言程序,不使用任何外部库,printf都不用,也不能在linux环境中用,那么是不是操作系统... 1、C语言能编译成机器码,那即然是机器码,为什么windows环境中编译的C语言程序,不使用任何外部库,printf都不用,也不能在linux环境中用,那么是不是操作系统能阅读各自平台程序的机器码?

2、如果操作系统能对各自平台的机器码进行阅读,那么为什么又要用java来写呢,用其它的语言编写,由操作系统读取各自设备的机器码,进行解释运行不也一样吗?
展开
 我来答
HoLee1997
推荐于2016-06-25 · TA获得超过1961个赞
知道大有可为答主
回答量:2557
采纳率:84%
帮助的人:967万
展开全部
Android操作系统是基于Linux内核的,Linux内核是开源免费的,所以会很快流行起来,这很正常
1、看不懂你讲的是啥意思。先告诉你这个吧,C/C++这两门语言有一大特点就是一次编码到处编译,这就是C系列语言跨平台的特性。而且根据不同平台上的不同的编译器对代码也是有讲究的
2、毕竟不同的编译器会生成不同的机器码,Java也是跨平台的,Java的特性是一次编译处处运行,原理就是因为JVM(Java Virtual Machine,也就是Java虚拟机),有了JVM才能运行Java程序,Java编译器生成的是字节码,在虚拟机中解释运行,在手机里应该会自带Java虚拟机吧,对于硬件我倒没怎么了解了,特别是手机
呼延芝英P9
2015-04-10 · TA获得超过1551个赞
知道小有建树答主
回答量:1297
采纳率:50%
帮助的人:651万
展开全部
不同的cpu下的机器码是不一样的 安卓选择java的原因是看中了可移植性,而且java是在jvm中运行,用的是java编译过的二进制代码,答得太简单了 建议看看这个 http://blog.csdn.net/zxliyajun/article/details/5376983
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式