字节商业化技术提前批一面
1、项目中遇到的难点。
2、有没有用过授权登录,第三方登录,了解过OAuth2.0吗?
3、线程的生命周期。
4、sleep()和wait()方法的区别是什么?如何唤醒?
5、数据库的索引结构是什么?
6、为什么使用B+树?对比B树,哈希。
7、聚簇索引和非聚簇索引的区别。
8、sql优化。
9、项目中缓存使用过哪些数据结构?
10、redis数据结构如何实现的?是否了解过底层代码。
11、synchronized和lock的区别?
12、发生异常时synchronized和lock锁的占用情况?
13、可重入锁的特性。
14、创建线程池的参数有哪些?
15、任务队列一般选用阻塞队列还是非阻塞队列?为什么使用阻塞队列?
16、有没有实现过所有的数据结构?
17、代码题,两道二选一。
①、n个节点的有向无环图,找到所有从0→n-1的路径。
②、找出字符串中最长的回文子串。
最后还问了平时如何学习的,有没有开源项目?建议多了解底层,解决场景问题。
#Java开发##字节跳动##面经##校招##Java工程师#