Dalvik虚拟机和Java ME有什么不同之处

阅读更多

众所周知Google Android平台的开发语言是Java,但是Google并不是采用Sun公司的Java Micro Editon Virtual Machine,而开发了Dalvik虚拟机,它们之间的不同有很多地方,给移植带来了一定的问题,同时从Android SDK版本的升级上来看和Java ME的API越来越不兼容了。Dalvik的出现让大家猜测是摆脱升阳公司的授权问题,但通过开发就看出了Dalvik是一个平台级的Java虚拟机,有些类似BREW那样的产物,可以开发系统级的程序,而J2ME中是一个很高层的东西,封装的层面很高导致了功能受到大幅限制。

Dalvik在运行效率和GC上做的会比Jave ME好很多,比如进程和Activity的生命周期都是由虚拟机去决定,Google优化了Dalvik的多线程多任务能力,充分发挥Linux的多任务性,和Symbian的活动对象的不同,未来的硬件足够强大时自然多线程是必须的,AO还是无法解决一些复杂的问题。

你可能感兴趣的:(虚拟机,Java,BREW,Android,Symbian)