过程
由于本人希望出国读研,有一段企业实习的经历的话会比较好申请,刚好看到字节跳动招实习生,遂投个简历试试水。8月15号投的简历,投完5分钟HR就打过来电话(夸一下字节跳动办事效率),确认了一下基本信息无误后,就去审核简历了。又过了5分钟左右,打电话约面试,时间定在了8月20号。接下来几天就在疯狂地准备。。。
面试题目(顺序不一定准确)
- 自我介绍
- Java基础(构造方法之类的)
- Synchronize与Lock的区别
- HashMap相关知识点
- Java泛型的类型擦除
- Java内存模型(顺带提了StackOverflow和OOM的区别)
- GC
- 软引用和弱引用的区别
- TCP三次握手四次挥手的过程,以及为什么握手只需要三次而挥手要四次
- Android为什么不能在子线程更新UI(这个我查过,但是没看懂,所以没答出来,哭唧唧)
- Android事件分发机制
- 最后考了一个简单的算法题:如何判断一个正整数是否为2的整数次幂
int a = 32;
while (a % 2 != 1) {
a /= 2;
if (a == 1) {
System.out.println("yes");
}
}
然后问我还有没有其他的做法,想了想尴尬地说了一句没有。。
- 面试的结尾问我有没有什么想问他的,我随便问了一个Android屏幕适配方案,整个面试过程大概一个多小时吧
感想&结果
不面不知道,一面吓一跳,很多知识点还是不会,平时太浮躁,以为写点东西出来就什么都知道,现在看还是要静下心来认真学啊。
一面磕磕绊绊通过了,二面本来紧跟着一面,由于我中午要吃饭,所以时间定在了一天后= =,过段时间写二面经历。