4.16参加了第一次面试,记录面试流程如下:
- 自我介绍
- private、public、protected以及默认的区别
- int、Integer区别,各自的初始值
- 线程池分为几种(4种)
- 线程的状态(6种)
- 并发有什么注意的地方(自己答得是sychronized,wait/notify造成的死锁)
- 项目做了具体的什么,对框架的了解(跪)
- 单例模式用在什么地方(跪),哪两种单例模式?
- 用过数据库的事务吗?(没用过,看过相关的资料,遂不问了)SQL呢?(用过一点,也就不问了)
- 平时通过什么途径学习(我说看书,对面问 是从我们网站上买的咩)
- 你有什么问题?
以下是吐槽以及感想
感觉面试官还是很和蔼的,虽然从早上10点半我就到了酒店,11点的面试时间硬生生等到了12点多。面试是在一个大厅里有很多长桌很多面试官和面试者,我一进去面试管就认出我招呼我到他那里(感觉细心负责),然后说不好意思先打个电话,招呼下一个面试的同学先吃饭。(在打电话期间看到旁边竟然有一个很NICE的女面试官,还是略惊讶)顿时对这个面试官好感倍增。然后看我意向城市写的杭州还先跟我解释自己这个部门基本上都在北京,问你为什么要去杭州呀?你成绩不错也是名校毕业(- - !)在北京也很有竞争力的!(好感MAX)。更重要的是,他说他这边作为面试官想让经过他手的人至少都有机会面试,不会在简历上卡人都给你面试机会。想到我是面试前一天早上才收到的通知本来都以为没有机会了,,瞬间有点莫名感动。然后聊了一下接触JAVA多久啦,以前学的什么语言呀。最后进入正题。
说实话前两题都很简单。。我以为这次面试稳了,然后对方问起了单例模式,我还寻思果然都是常见套路呀,正准备把实现方式跟他说呢他却问了,用 在 什么 地方! 好吧当时确实有点慌,因为这部分知识来自书籍,但是貌似书上也没说用在哪啊!!!我随便举了几个例子,对同一个文件的写入,对方表示可以用同步解决。工厂模式的工厂,对面表示那是单例模式。。然后确实没有说到什么太好的点吧。然后明显感觉面试官变得略微严肃了靠在椅子上抱着胸。对方表示23个设计模式都给你写出来了,不要只知道内容,更要知道应用在哪里,否则和没看一样。其实我内心OS是你不按套路出牌啊!!让我手写一个单例不就行了么!!虽然主要还是自己菜的抠脚。。
最后和数据库相关的东西确实只是自己业余时间学的点,但是其实我不明白的是面试官为啥听了以后就不再问了,仿佛失去了兴趣,我倒是纳闷我是不是应该主动的说我会那方面的什么什么。
最后的提问环节还是交流了很多,面试官跟我讲了框架的重要性,框架使用了很多设计模式以及思想,非常非常重要,告诫我说不要抗拒框架(哪有抗拒。。真的是没时间学习),现在的JAVA开发框架可以大大的提高效率,特别是协同开发的时候。还聊了点数据库的东西,关系型数据库与nosql,两种都有擅长的地方,是缺一不可的。nosql就是数据都存在内存中,最火的redis key-value型数据库速度非常快,blabla。。。
写在最后,在考试是不是对自己知道的那一方面多说点,比如并发要注意什么,这种开放性问题其实还有很多说的,比如 vialotation的使用的几种坑,要是用原子类,以及同步的数据结构等。比如往hashmap、hashtable上面引,也许效果会比后面一堆不会的问题要好很多。总之就是表现出自己的积极性,也是思维敏捷的一种吧。
确实几个小时下来对某狗印象还是很好的,算是一次有趣的经历吧。可惜本屌确实不够强,还是得努力学习呀~
PS:在骑车去酒店的过程中,还打来一个杭州的电话,但是错过了。。悲剧啊!