这次是捞起来重新面的,之前的四面:https://www.nowcoder.com/discuss/428048?channel=1000&source_id=home_feed
面试(1h)
Java
- 为什么String要是final类(这个回答的不是很好,有什么优缺点)
- 异常的种类,为什么要有Error和Exception的区别,ClassNotFoundError和ClassNotFoundException为什么要有两个?什么场景抛出哪种?
- ClassLoader机制(双亲委托,结合前面的String和异常思考一下)
- 集合类List和Map,线程安全版本,如何线程安全
- 实现LRU算法(LinkedHashmap,实现方法)
- 线程同步方法
- Synchronized底层原理,锁的种类,不同锁的使用场景
- CAS的原理,原子性(还扯了一下SQL的事务)
- 泛型(原理,super和extends的区别)
android
- 事件分发
- View绘制
- Handler机制,mainThread的Looper和其他looper区别,为什么looper循环不会ANR或者卡死
- Message的post和send不同,postDelay怎么实现的
思考题:用面向对象设计一个矩形(完全没答到点,面试官后来说是要考虑父类子类,要考虑特性和接口,比如求周长,求体积或者翻转的特性等接口)
算法题:翻转k链表
字节挂了又捞,然后再挂,可太难受了
全部评论
(4) 回帖