腾讯 Android客户端开发实习 面试(2020.3.13)
腾讯移动客户端开发 面试题目
Q1:有没有了解过一些主流的框架
Q2:说一说HashMap(会涉及对HashMap的优化问题,线程安全的问题)
Q3:写一个单例模式
Q4:从文件读数据并找到最小的十个数
Q5:上一题的升级版,找到出现次数最少的十个数
Q6:是否了解过JetPack
Q7:说一说如何解决应用卡顿的问题
Q8:Activity和Fragment的关系(也会问它们的生命周期)
Q9:说一说线程的状态
Q10:说一下Http的状态码
Q11:说一下Http请求的过程(会问协议和步骤)
Q12:说一下ListView的底层实现
Q13:对比一下LinearLayout和RelativeLayout的性能
Q14:说一下如何处理不定长的包、
Q15:说一下Java的垃圾回收机制(升级为Android的内存回收机制)
问题的解答会逐渐更新(或者断更)
Q1
对流行框架的了解,主要是面试官想了解到我在项目实践中使用到了那些框架,通过回答就可以知道项目经验的多少
例如我要处理一个网络的图片瀑布流展示,我可能会用到okHttp,Glide,Gson之类的框架
Q2
HashMap 是一个非常经典的Java面试题,我目前也不是很了解,没有很好应用过,日后清楚了更新
Q3
考察设计模式的理解和应用,设计模式在Android开发中真的很重要,例如单例模式会涉及到线程安全的考虑
Q4
从文件读取会考虑到文件大小问题,可能会涉及分治,最小的十个数则是排序方法的问题
Q5
找出频率最少的十个数,解法可以是自定义一个类,其中key为数字,value为次数,将所有数统计到ArrayList中,然后对ArrayList进行排序,就可以得到频率最小的十个数了
Q6
JetPack是google这几年推崇的一种开发方式,包含了一些库,工具和指南,旨在帮助开发者开发出优质的应用(向后兼容,稳定,易维护),考察了是否去了解 android最新的动态,网上很多android的学习资料,blog可能不会设计到jetpack推荐的开发方法,所以要去android开发者 网页自己去了解
Q7
这就涉及到性能优化的问题了,应用卡顿有很多种可能,可能是某一个界面的View层级太复杂,导致运行不流畅;可能是将某些耗时操作在主线程中执行了等等;也可能是内存泄漏问题导致应用运行时越来越卡 等等
当然面试也会涉及到计算机网络的问题,网络编程在Android开发中是必不可少的
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)