记同花顺一面面经过程,也是本人第一次写博客,在尝试锻炼写博客来记录苦逼的心路历程
先说说本次面试的感受:面试官很和蔼,全程面带微笑,你回答问题的时候,也会很礼貌的点头回应,总体来说面的内容多,但是问的不深,所以自己也无法感觉出到底是答的好还是不好。
下面是面试的经过以及问题:
1. 项目部分
因为自己本科做的项目和本科的实习经历都是物联网工程专业,比较偏向硬件,所以他也没有细问,就简要问了一些内容。
- 你的研究生的方向是什么,简要介绍一下?
- 看你这项目内容和实习经历好像都是硬件相关的东西,为什么读研和找工作的方向是软件方向呢?
- 你在研究生期间做过java相关的项目吗?你既然是自学转的java,那你的学习途径跟学习方式都有哪些呢?
2. Java部分
1. Hashmap了解吗?(一般就只能回答了解之类的,要不然也太说不过去了)
2. 那你讲讲hashmap的底层数据结构和原理?
3. hashmap是怎么扩容的,扩容的量是怎么实现的(也就是一次扩多少)?
4. hashmap是线程安全的吗?
5. 那么线程安全的有哪些呢?(这里我回答了hashtable和currenthashmap,并简要介绍了两个的区别)
6. 那你可以讲讲currenthashmap的底层原理吗?(这里我分别介绍了1.7和1.8的区别和原理,分段锁和CAS)
7. JVM了解吗?
8. GC是怎么确定垃圾的?
9. GC是怎么回收垃圾的,算法是什么?
10. 介绍一下分代模型和为什么要这样划分分代模型?
11. 数据库了解吗,你平时都是用什么数据库?
12. spring,spring Cloud ,spring MVC了解吗?
13. ArrayList的存储方式和扩容方式?
还有一些其他的问题,记得不太清了,但是大致已经说得差不多了,最后就是寒暄了几句,然后问我还有什么问题?
这就是大致的面试流程了,都是大家常见的问题和面试官常用的问题。
对了,还有多线程和线程同步,线程通信的问题,因为懒得返回去重新修改了,就写在下面把。
- 多线程了解吗?
- 多线程怎么实现?
- 怎么实现线程通信?
- 线程同步怎么做?
- wait()和sleep()简要讲一下?
补充:还有一些包括如何创建对象,反射原理是什么,列举至少五种异常等问题?
大致就是以上内容,自我感觉答的还可以,由于都是些常问的问题,你也不知道区分度大不大,具体能不能过一面,就看造化了。