快手秋招Java1面凉经
面试官全程无表情,黑眼圈很重很重,感觉是才熬夜了的。感觉答的还行把,最后挂了,最后评价竟然是我了解的不深入?感觉还是不缺人啊,不然的话为什么快手只有秋招呢?
一面(50min)
1.自我介绍
2.聊项目
- 连接如何管理?(线程池)
- 说下nio?
3.聊下Java把
Collection下面有哪些类?(Set、List啥的)
ArrayList和LinkedList的区别?
new ArrayList()后,for循环插入100个元素说下过程?(初始有一个长度,然后会扩容)
什么时候会扩容?(数组不够的时候扩容1.5倍)
copy是怎么做的?调用的什么方法?(感觉面试官在考我源码问题....危)
new ArrayList(10000),需要申请多大空间?(我说存的是引用,引用大小*10000这么大)
每个引用多大?(不知道)
Map说下?(HashMap和TreeMap)
红黑树了解过?(饶了我把)
什么节点是红什么节点是黑?(不知道)
线程池构造函数参数?(7大参数)
synchronized关键词了解?哪几种使用方式?
synchronized如何加锁?(synchronized底层原理)
公平还是非公平?
4.数据库
MySQL索引结构是怎样的?(B+Tree)
有索引
(a, b, c)
,select * from t where a = ? and b = ? and c = ?
和select a, b, c from t where a = ? and b = ? and c = ?
有什么区别?(我从回表的区别说的)假如where a = ?, b > ?, c = ?,索引会走到哪里?
事务隔离级别有哪些?
什么是幻读?
删除也会幻读?(当时答的会,最后面试官纠正不会,因为gap锁会加锁)
有哪些锁?(行表锁、读写锁)
5.写个题把?(20min)
- 给定一个二叉树,非递归求二叉树的高度和宽度。
- 其实算法题很快就敲完了,宽度因为我理解题意有问题,导致一直在思考如何做,后面问了下面试官原来题意想复杂了,就轻松搞定了
6.反问
- 大概做什么的?
- 评价下?(技术觉得了解太浅了,Java和数据库觉得太浅了)
全部评论
(3) 回帖