岗位:Java开发工程师,必须会Vue
先说一下吧,感觉被面试官吊打了,问麻了,但是也发现了自己很多不足的地方。
公司规模很小,0-20人,实际工作室只有三个人,但是公司应该大部分都是驻厂开发。
在线上和HR其实聊的挺好,包括正在做的项目和我之前所做的东西是比较相似的,但是可能因为公司规模问题,他们需要的可能是能够迅速接手的开发人员,所以要求比较高。
说一下能记起来的吧:
一、填写个人资料表(两页)
很琐碎(略)
二、笔试题(30min 大约十五道题左右)
- 写出常见的包、类、接口名称,分别五个
- 重载重写的区别,重载是否可以通过返回类型进行判断,重写主要用于什么场景,举例说明
- Exception中可抛出的结构哪三种类型,运行时异常和一般异常的区别,例举出常见的运行时异常,关于捕获异常你常采用什么方法
- 哪里会用到反射机制,反射机制的优缺点,反射机制的作用和原理大致说明
- 分别解释一下接口和抽象类是什么以及区别,说出几个常见的
- 有一个关于equals的问题
- 什么是GC、说一下JVM有哪些垃圾回收器,简要说明。(还有些记不得了)
- 你常使用的设计模式有哪些,分别说明
- 使用Spring通过什么方式访问Hibernate,使用Spring访问Hibernate的方法有哪些,(还问了和ibatis的联系和区别之类的,有点忘记了)
- 你如何理解Spring Boot配置加载顺序?运行Spring Boot有哪几种方式?Spring Boot比Spring做了哪些改进
- Spring Boot的加载方式有哪些
- 后续就是给了两个数据库表,然后三个小题,让你根据要求写出查询语句(PS:第三个小问真的没太理解题意)
三、一对一面试
全凭记忆:
- 根据我的简历问了一下之前的工作情况,对我提出质疑,问了一下之前离职的原因
- 问了之前的项目实现了什么模块,用到了什么算法等等
- 主要是关于场景进行提问很多问题,八股较少,有一个很无语的问题:如果客户说你的这个功能一会儿好使一会儿不好使你怎么办?怎么排查?
这个问题至今我也回答不上来,我给出了5-6个回答,面试官都不满意
给我的前提就是网络没问题、接口没问题、代码没问题、前端没问题、客户操作没问题。。很离谱
我感觉我能想到的排出异常方法都说了,还是不对,感觉这个问题挺无语的
- 问了MyBatis多对多配置的相关的一系列问题
- 让我说了Spring Boot是什么,优点,和Spring的区别
- 聊了JDBC template
- 聊了自定义异常,反复问了运行时异常,常见的有哪些,是否可通过编译。聊了检查异常
- 聊了二叉树算法、二分法、排序
- 反过头来聊之前的MySQL题目
- 其实大部分都是给我设定一个场景然后让我回答一些相关问题,其他的记不得了
总结:
自己的弱点可能就在于给场景化问题的解决吧,有很多地方回答出来就是不够深入,不够细致,自己回答的东西比较表面,如果深挖的话,有些东西就答不上来。
也算是一次能够吸取经验的面试了。
#面经##Java开发工程师#