一面(视频面试 40min)
进程和线程之间的区别
操作系统堆栈(JVM的堆栈)
两个拥有不同数量线程的进程,执行时间长短?CPU是如何为线程和进程分配时间片?
Activity启动模式、作用
View绘制流程
HashMap实现原理
Android动画机制
volatile关键字作用(Java内存模型)
了解新技术的途径,了解的新技术
所了解的第三方类库,看过的源码(Glide源码)
忘了。。。
二面 (视频面试 45min)
获取一个View的所有子View(代码实现)
MVP和MVC之间的区别,如果使Activity功能单一化,使其作为View层,那么MVP和MVC之间的区别
HTTP1.0与1.1之间的区别
RxJava的优缺点
fetch和pull之间的区别
多进程应用场景,多进程通信方式
Gradle 执行顺序,脚本文件作用
ListView缓存机制以及缓存ItemView数量、加载乱序原因及解决方法
动态代理和静态代理,是否可以相互替换
图片加载框架的优缺点,效率对比
100*100的图片占了多少内存
忘了。。。这一面炸了,炸了啊!!!
三面 (视频面试 40min)
介绍自己的一个项目,讲了P2P与NAT。关于内网穿透相关知识以及项目实现。
Activity和Fragment生命周期,Activity各个生命周期使用、Fragment原理及使用
Android消息机制,子线程使用Handler步骤,还有一个问题,不知道问了什么
自定义View实现方式
懒汉+单例+多线程+优化(代码实现)
吃苹果(类似于青蛙跳台阶)(代码实现)
所了解的新技术
忘了。。。
四面(视频面试 30min+)
介绍自己的项目及学习过程
介绍所了解过的源码(Glide)
介绍Android架构组件
Java内部类(真的是死在了上面)
忘了。。。
四面还是挂了,反思一下自己挂的也算是理所当然,对于很多问题都没有做到真正的深入理解,问题表达和描述也存在一定的问题。学无止境,对于问题还是要学会追根究底、反思总结才得行~
网友评论