如果我是Android面试官十

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Kongou/article/details/82969587

一、Android 各版本新特性

这个先开个坑,以后填。

二、Android两种虚拟机

Java提供了JVM虚拟机,而Android出于优化的考虑,又提供了自己的虚拟机Dalvik。

JVM基于栈架构,每次取数据是从内存中取。

Dalvik虚拟机是基于寄存器架构,每次去数据从寄存器中取,效率要比从内存中取要高。

二者执行的字节码也不一样,java虚拟机是执行jar文件,而DVM虚拟机是执行dex文件。

在Android 4.4以后,ART虚拟机用来替换DVM虚拟机。

ART相比于DVM,在安装应用时会进行一次预编译,将字节码编译成机器码并存储在本地,这样应用运行时就不需要编译了,运行效率大大提升。

ART比DVM占用空间要大,也就是用空间换时间。

同时,ART比DVM的GC种类也要多。

三、asset目录与res目录区别

asset目录下的资源获取方式为文件路径+文件名。而res目录下文件获取方式为R.xxx.xxx。

如果在目录下创建了子目录。asset目录下的文件可以通过修改文件路径名称来获取资源。而res目录下则不能通过R.xxx.xx.xx来获取,这样会报错。

asset目录下资源不会生成资源ID,使用时通过方法如getImageFromAssetsFile等获取。

猜你喜欢

转载自blog.csdn.net/Kongou/article/details/82969587