经验均来自学长,留下此篇博客留着自己看
其中又几个方面需要注意:
1.Java基础:Integer类,Map,HashMap,List,Java集合的底层实现,java内存模型,java垃圾回收算法。Integer主要包括它的数据类型,缓存,方法重写和重写时的注意事项,Integer的int数据为什么要设计成final型。原子类的Integer。
HashMap在多线程里会有什么问题?分析一下?
比如HashMap的put方法 在多线程里的hash值会出现什么问题?
另外有CAS和AQS?
2.Java多线程。线程同步,线程安全,线程和HashMap会出现什么问题
3.数据库设计,问的最多的是用户角色权限。数据表里的设计。
4.redis,雪崩,击穿,穿透。redis数据结构和实现原理。如何解决redis崩了的问题。
5.熟悉dobbo,zookeeper,nginx分布式。加分项
6.能够深入理解并区别数据库的几种索引,并且理解原理。了解几种常见的数据库引擎的区别,数据库的优化。三范式和解决的问题。
7.线程方面。要知道线程是解决什么问题,要能手写实现线程池(这个很重要)。线程同步的n种方式和区别,实现原理。线程通信的几种方式。
附录:这都是学长的面试经验。
加油!