安卓系统为什么要用java语言写?可以用C语言写程序吗?

 我来答
猪八戒网
2023-06-06 · 百度认证:重庆猪八戒网络有限公司官方账号
猪八戒网
猪八戒网(zbj.com)创建于2006年,现已形成猪八戒网、天蓬网和线下八戒工场的“双平台+一社区”服务模式,是中国领先的人才共享平台。
向TA提问
展开全部

android其实是基于linux内核的,但在LINUX平台上,适合的语言很多CC++JAVA等,C开发中大型图形界面是个问题,而且不是面对对象的语言。

PYTHONRUBY因为执行机制的关系(解释性),执行效率不太适合作为首选开发平台那么就剩JAVA和C++可以选了。

相比C++来说,JAVA虽然执行效率不如C++,但开发效率更高,而且JAVA发展到今天,第三方库十分庞大,社区也非常活跃,可以说,JAVA是除了C++/C之外,全球最流行的语言。

android刚诞生的时候,其目的肯定是要降低开发门槛,吸引更多开发者加入,从而才能带动android的进一步普及。而JAVA的入门比C++快,在跨平台开发上比C++更容易,庞大的JAVA社区又可以提供足够的第三方开发资源。虽然执行效率上有所欠缺,但也比其他语言,比python这些强。

所以,JAVA成为了android平台的首选开发语言,也可以说,JAVA是一个很均衡的选择,在性能和门槛之间平衡的一个选择。

当然,毕竟是linux内核的系统,android的sdk除了提供JAVA版以外,也有C++版的,也还是可以用C/C++开发android软件。

安卓系统的架构图如下:

Android系统本身是一套软件堆栈(或称为软件层叠架构),它包含三部分:操作系统、中间件、应用程序。我们通过AndroidSDK所提供的工具和API来开发各种应用。

AndroidRunTime(运行时环境)包括(coreLibraries)核心库和Dalvik虚拟机两部分:

Dalvik虚拟机:

类似于JVM,是Google公司自己设计用于Android平台的虚拟机,它可以简单的完成进程隔离和线程管理,并且可以提高内存的使用效率,Dalvik虚拟机执行扩展名为.dex的Dalvik可执行文件,该格式文件针对小内存使用做了优化。

看到这里你应该明白了,因为Android系统使用了类似JVM的虚拟机,所以我们上层开发的安卓APP必须使用Java语言,不能够使用C语言编写。

专业从事软件研发工作多年,在软件设计、开发、测试、研发管理等领域里经验丰富,感兴趣的朋友可以关注我的头条号,相信一定会有所收获。

如果有软件研发方面的问题,可以咨询我。

谢谢!

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式