美的JAVA开发实习面经
简历通过后两天就收到评测通知,北森的,
主要考察逻辑推理、数字图表计算、文字内容提炼这些,
最后还有一些性格评测,不涉及到专业知识。
评测结束几天后收到HR的电话约面试,我说后天下午可以,HR说可以
结果第二天下午就收到了面试官打来的面试电话😆,
我约的“后天”刚好是4.30日,五一假期的前一天,可能面试官想早点完成任务享受假期吧😁,也能理解。
接下来就迎来了我人生中第一次面试,一开始自我介绍的时候特别紧张,说话都有点不利索了,
好在后面面试官小哥哥没有抓着我的简历问,直接开始正式提问,
问题都是JAVA方向一些常见的问题,好在回答得还行,后面就没那么紧张了,一共面了34min。
1、JAVA中有哪些集合,ArrayList和LinkedList的区别?
2、HashMap用过吗?底层怎么实现的(1.7和1.8)?线程安全吗?不安全用什么?
3、ConcurrentHashMap怎么实现线程安全(1.7和1.8),和HashTable的区别?
4、由上面引出多线程,问多线程创建有哪几种方式、实现callable和runnable的区别,get方法是否阻塞?
5、多线程时,想让多个任务在某一时刻同时执行怎么实现?(答:cyclicBarrier,以及其实现原理)
6、线程的同步如何实现?synchronized关键字底层实现原理,和ReentrantLock的区别
7、Volatile关键字作用以及原理、CAS算法说一下
8、线程池的底层工作原理、饱和策略
9、BIO、NIO、AIO
10、i++和i=i+1的区别(我只说了赋值顺序不同,后面面试官提醒后面的形式能强转类型前面的那种不能)
11、MySQL优化说一下你的理解(这里我就答了索引的优化🤪)
12、sping的IOC、AOP原理说一下,AOP基于JDK动态代理实现和CgLib的实现的区别,CgLib具体怎么用
13、sping事务的几种实现方式、xml和注解同时配置哪个生效
14、mybatis里面#和$的区别
然后面试小哥问有没有想问的,我问了一下他们部门是做什么方向的,以及后续学习建议,
最后还问他面试是有多轮吗,小哥也不清楚,说是会比正式招聘少几轮,于时就开始了漫长的等待~
五一假期过后大概等了四、五天,收到了hr面试通过的通知,两天后收到了offer。