5 月份,京东 Android 开发面经分享!
6、Activity 的启动模式和适用场景?
7、ViewPager 用过吗?然后扯到了它和 Fragment 联合;
【二面】
1、自我介绍
2、介绍一下项目经历,项目中遇到最大的问题是什么?怎么解决的?
3、用过什么第三方库吗?说一下 Glide 和 Picasso 有什么区别?
4、如果让你自己设计图片框架,该怎么操作?
5、内存泄露和内存溢出说一下
(1)内存泄漏 memory leak :是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄漏似乎不会有大的影响,但内存泄漏堆积后的后果就是内存溢出。
(2)内存溢出 out of memory :指程序申请内存时,没有足够的内存供申请者使用,或者说,给了你一块存储 int 类型数据的存储空间,但是你却存储 long 类型的数据,那么结果就是内存不够用,此时就会报错 OOM,即所谓的内存溢出。
6、内存溢出的原因及解决方法:
(1)内存溢出原因:
①内存中加载的数据量过于庞大,如一次从数据库取出过多数据;
②集合类中有对对象的引用,使用完后未清空,使得 JVM 不能回收;
③代码中存在死循环或循环产生过多重复的对象实体;
④使用的第三方软件中的 BUG;
⑤启动参数内存值设定的过小
(2)内存溢出的解决方案:
①第一步,修改 JVM 启动参数,直接增加内存。(-Xms,-Xmx 参数一定不要忘记加。)
②第二步,检查错误日志,查看“OutOfMemory”错误前是否有其 它异常或错误。
③第三步,对代码进行走查和分析,找出可能发生内存溢出的位置。
7、垃圾回收机制说一下?
8、有什么想问我的吗?
【三面】
1、自我介绍
2、你对京东的了解有多少?
3、为什么选择离职?是上一家公司不好吗?
4、你期望的薪资是多少?
5、有什么想问我的吗?
整体来说,这次面试感觉还不错,毫无难度,我对自己的发挥和表现还算比较满意吧。
可能是因为基础知识掌握较好,目前阶段还够用吧,但还是需要进一步向下探究,了解底层实现,学习优化机制。
面试官的一句话让我印象深刻“面向用户编程,不能局限于实现功能,还要为用户体验持续优化”
前面说过,希望对大家有帮助,那么肯定不能没有真题的答案啦~
笔者在面试前,从网上收集了一些 Android 开发相关的学习文档、面试题、Android 核心笔记等等文档,进行了复习,在此分享给大家,希望能帮助到大家学习提升,如有需要参考的可以直接去我 GitHub地址:https://codechina.csdn.net/u012165769/Android-T3/-/blob/master/README.md 访问查阅。
评论