为什么安卓选择了JAVA?
1、C语言能编译成机器码,那即然是机器码,为什么windows环境中编译的C语言程序,不使用任何外部库,printf都不用,也不能在linux环境中用,那么是不是操作系统...
1、C语言能编译成机器码,那即然是机器码,为什么windows环境中编译的C语言程序,不使用任何外部库,printf都不用,也不能在linux环境中用,那么是不是操作系统能阅读各自平台程序的机器码?
2、如果操作系统能对各自平台的机器码进行阅读,那么为什么又要用java来写呢,用其它的语言编写,由操作系统读取各自设备的机器码,进行解释运行不也一样吗? 展开
2、如果操作系统能对各自平台的机器码进行阅读,那么为什么又要用java来写呢,用其它的语言编写,由操作系统读取各自设备的机器码,进行解释运行不也一样吗? 展开
2个回答
展开全部
Android操作系统是基于Linux内核的,Linux内核是开源免费的,所以会很快流行起来,这很正常
1、看不懂你讲的是啥意思。先告诉你这个吧,C/C++这两门语言有一大特点就是一次编码到处编译,这就是C系列语言跨平台的特性。而且根据不同平台上的不同的编译器对代码也是有讲究的
2、毕竟不同的编译器会生成不同的机器码,Java也是跨平台的,Java的特性是一次编译处处运行,原理就是因为JVM(Java Virtual Machine,也就是Java虚拟机),有了JVM才能运行Java程序,Java编译器生成的是字节码,在虚拟机中解释运行,在手机里应该会自带Java虚拟机吧,对于硬件我倒没怎么了解了,特别是手机
1、看不懂你讲的是啥意思。先告诉你这个吧,C/C++这两门语言有一大特点就是一次编码到处编译,这就是C系列语言跨平台的特性。而且根据不同平台上的不同的编译器对代码也是有讲究的
2、毕竟不同的编译器会生成不同的机器码,Java也是跨平台的,Java的特性是一次编译处处运行,原理就是因为JVM(Java Virtual Machine,也就是Java虚拟机),有了JVM才能运行Java程序,Java编译器生成的是字节码,在虚拟机中解释运行,在手机里应该会自带Java虚拟机吧,对于硬件我倒没怎么了解了,特别是手机
展开全部
不同的cpu下的机器码是不一样的 安卓选择java的原因是看中了可移植性,而且java是在jvm中运行,用的是java编译过的二进制代码,答得太简单了 建议看看这个 http://blog.csdn.net/zxliyajun/article/details/5376983
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询