这个面试是我第一次面试,啥也没准备,寒假在家学JS,突然看到春招信息,肝了一天简历就投出去了。
投完就后悔了,记得简历邮件要看有没有公司要求的格式,我直接“岗位+学校+姓名”给发过去了,谁知道钉钉那边要用“岗位+学校+姓名+电话号码”,瞬间爆炸。
本来还打算复习一下,感觉自己爆炸了也就没复习。(借口)
然后那边HR电话过来(也不一定是HR),做了下自我介绍,针对简历提了一些问题,粗略答了一下,告诉我下午笔试。
Q: 说说Java的运行原理,对虚拟机的理解。
Q: Java的内存回收机制,什么时候会销毁对象,怎么判定的。(这个怎么感觉出现频率那么高呢)
Q: 代码规范里,一个方法最好不要超过多少行?(关于这个问题,会这么问是因为我在简历里自我介绍写了代码能力强,编码规范之类的话,建议大家如果要这样写一定提前做好工作……我承认在此之前我觉得命名规范+缩进就算是代码规范了,果然路漫漫其修远兮。)
然后我就恶补了一下基础知识,等待下午笔试。到时间之后对面直接发来一个在线测评的网址,阿里在线评。我一个垃圾大三学生没见过市面啊,第一反应是:卧槽这测评网页做的好帅啊!第二反应就慌了:没有IDE的那种实时错误提示,分分钟error啊。
笔试题目很简单,可以说是非常简单……简单到什么程度呢?简单到暗藏玄机的程度(不)。
1. 1个班级有30个同学,学号从1到30, 请生成这个学号的列表。
2. 过滤出学号 < 20 并且是偶数的学号。
3. 将过滤出的学生填充学生的姓名。给出接口了。
给的接口是Map,List之类的,我一看不会啊!立马百度了一波,现学现卖,随意操作。因为我Java是自学的,很多经典的书都没怎么看完,知识储备和我照着课本复习过的C和C++没法比的那种,所以问题一下子就暴露出来了。
我不知道Java封装的Long类,Integer和基础数据类型之间关系是什么,怎么用,也不知道HashMap,TreeMap怎么用,啥都不知道,靠经验瞎猜……各位老铁千万不要学我,这么简单的问题给答得漏洞百出。
至于我的代码是什么,就不放了,问题主要都在编译错误上。就说一下HashMap的keyset()方法返回的值不是有序的……这个估计用过的人也都知道吧。
最后反思就一句话:我已经离不开IDE了,从今天开始,我所有的Java代码都用记事本写,淦!