字节日常实习面经
先是面的番茄小说部门
8.27一面(50min)
自我介绍
算法:41. 缺失的第一个正数
浏览器从输入url到渲染页面,经历了哪些,大概说说
Https和Http的区别
数组和链表的区别
进程和线程的区别
MVP和MVVM的区别
Activity的LunchMode有哪些
说说你是怎么解决内存泄漏的
说说IdleHandler对WebView的加载优化实现逻辑
说说怎么优化RecyclerView卡顿的
说说怎么实现APK的体积优化
反问:
面试表现如何
部门业务
如果我成功进去会做什么业务
公司base
8.29二面(60min)
自我介绍
说说java的final关键字作用?
java的list和map的区别?
HashMap怎么处理Hash冲突?
怎么判断两个类是不是相同的?
了解过synchronized吗?它的工作原理?
了解volatile吗?和synchronized的区别是什么?
volatile支持原子性吗?为什么?
下面代码中执行test1时线程会堵塞吗?
public class Test{ public synchronized void test1() { test2(); } public synchronized static void test2() { } }
Activity启动dialog后的生命周期变化?
说说view的事件分发机制?如何处理滑动冲突?
recyclerview的工作原理?recyclerview解决卡顿的方案?
recyclerview的复用机制?怎么通过recyclerview的复用机制方面优化卡顿?
说说Handler机制?
livedata中的设计模式?说说livedata的工作原理?
说说怎么对apk体积进行优化?还有什么其他体积优化方案?
说说怎么对app进行启动优化?如果都放在application的onCreate中进行库初始化不是更慢?怎么解决?还有什么其他启动优化方案吗?
说说Glide里用到的设计模式?责任链模式怎么体现?
算法:141. 环形链表
反问:
面试表现怎么样
实习生人员需求多吗
学习建议
部门有用到一些新的技术吗
9.2三面(40min)
自我介绍
为什么大三上就实习?未来规划?能实习多久?接受广州深圳两地跑吗?课程不用上吗?之前面试过哪些公司?
Unicode码、Ascii码的区别?这些中英文占用大小各是多少?
为什么要限制报文大小,tcp有限制报文大小吗?
怎么优化tcp?
http和https的区别?
get和post区别?post请求会不会在浏览器缓存?
知道多路复用吗?它解决了什么问题?底层原理实现是什么?
302状态码表示什么?
....(这里还有一些忘了的计网问题)
平常我们序列化的方式?(本来想说Serializable这些,但面试官说不是问这些表层接口方法,不懂了)
怎么保证序列化操作的原子性(就是不会写文件到一半就被打断)?
线程和协程的区别?为什么协程切换开销比线程小,是因为少了什么吗?
匿名内部类为什么可以调用外部类的属性?
外部类A有个成员变量B,这时候有个外部类C引用着B,A还能被回收吗?
要怎么保证Activity渲染完了才进行耗时操作?
说说项目背景、项目难点?
项目内存泄露是怎么样引发的?怎么发现解决的?
说说IdleHandler的原理?项目怎么使用的?说说通过IdleHandler优化WebView的原理?
没有算法题
反问:
表现怎么样(回答说还可以,就是一些基础不是很牢固)
学习建议(语重心长地说了要把学校里学的基础知识打牢固,还有其他一些,主要就是强调基础,同时学深)
最后在三面挂了,不过第二天被今日头条捞了
9.5复活赛一面(50min)
自我介绍
现在大三吗?这么早实习是为什么呢?打算考研还是工作?学校工作室主要是干什么的?
MVVM和MVP的区别?有什么是MVP适合做但是MVVM不适合的?
leakcanary的原理?它的默认检查对象有哪些?
leakcanary怎么确定activity要被放到弱引用检查队列中?
如果脱离activity的代码要怎么检测它处于onDestroy?
说说项目中优化webview启动速度是怎么做的
提前加载webview会有什么坏处吗?可以复用之前的webview吗?
工作室前端和客户端怎么通信?有了解过前端可以通过js和webview通信吗?
项目的apk体积优化怎么实现的?还有什么其他方法?模块化怎么实现?
项目登录模块自动登录怎么实现的?
说说View的分发机制?
熟悉哪些设计模式?
说说策略模式的应用场景?
手撕算法:146.LRU缓存
现在课多吗?一周实习能实习几天?
反问:
有几轮技术面?
面试表现怎么样?
学习建议?
部门实习生多吗?
9.6复活赛二面(60min)
自我介绍
为什么会开发xx项目?目前项目进展?
觉得自己在番茄小说部门的面试过程中的优点和不足?
为什么觉得自己的计算机基础这一块了解不是很多?
匿名内部类为什么能访问外部类?
泛型的实现机制是怎么样的?
说说这个类型擦除?两个类使用泛型被类型擦除后会是同一个类吗?
Object类有哪些常见的方法?
equals和hashCode方法的作用?
Hashmap的实现原理?为什么链表要转变成红黑树?Hashmap的put是怎么实现的?
内存泄露的场景?对象a引用了对象b,对象c也引用了对象b,垃圾回收时对象a能被回收吗?
jvm怎么判断一个对象能不能被回收?
类在什么时候会被移除销毁?
leakcanary检测的原理?activity的检测点在哪里?如果要检测一个应用中所有的activity要怎么实现?
对Android哪个组件的源码比较熟悉?
说说RecyclerView的回收机制?RecyclerView第一层缓存的作用是什么?
Handler的作用?可以直接在子线程中创建Handler吗?
写代码:实现在子线程创建Handler
手撕算法:445.两数相加
大概能实习多久?平时的学习渠道有哪些?为什么这么早出来实习?
反问:
面试表现怎么样?
看源码的话从哪方面入手好一点?
组内业务是什么?
如果成功进去了我会做什么业务?
9.9复活赛HR面(30min)
自我介绍
xx项目是什么性质的项目?
xx项目是和工作室的人一起开发吗?
这个工作室是什么?一共有几个人?有不同的方向吗?
参加这个工作室的目的?工作室项目从哪里来的?项目背景?
工作室的负责人是谁?成功进入工作室的要求是什么?
在工作室中有遇到什么困难吗?
同学对你的评价是什么?如果自己评价自己会用什么词?为什么?
过往有什么重要的目标吗?
为什么想这么早出来实习?没想过考研吗?
你是哪里人?父母有给你什么未来建议吗?
在校期间成绩怎么样?
怎么评价这几年的大学生活?
最近看的一本书是什么?接下来的学习规划是怎么样的?
为什么选择移动开发?未来也是想继续从事这方面的开发吗?
觉得字节的面试难度大吗?
能实习多久?一周到岗几天?
到岗时间什么时候?手头有其他offer吗?
反问:
面试结果多久出来?
面试表现怎么样?
#字节面经##字节#