机试运气比较好,两道简单题,一道中等题(最长公共后缀,一道动态规划,一道回溯)。满分拿下。面试问的知识点都比较基础,没有深挖。常规自我介绍,然后开始java基础,最后是算法。(应该是看面试官喜好,有的一上来就直接算法),可能是应届生的原因,面试官没看我的项目,蛋刀直入。算法做的快的话30-40min,面的消费者终端------------------------------------------------1.java的常用数据类型有哪些,包装类有哪些,包装类的意义是什么2.String是包装类吗,为什么不可变3.反射是什么,有什么用,在哪里有用到4.NIO,BIO是什么,对比,使用场景,原理5.Java的集合有哪些,List,set,map的关系,是否线程安全,底层数据结构6.线程安全的容器有哪些,如何保证的7. Sql注入是什么,如何实现sql注入,如何避免8.接口与抽象类的区别9. 垃圾回收器如何区别垃圾10. jvm内存区域分布11.STW是什么,发生在什么时候12.你用过哪些分析堆栈的工具13.用过哪些数据库,有哪些优化数据库性能的方法(sql,表设计,库参数,中间件,分库分表冷热分离)14.数据库中如何设计索引算法题:某扣345 逆转字符串的元音,算法题还剩40分钟,10分钟写完,面试官稍微指点一下,优化了代码。反问主要业务有哪些,转正难不难。