精巧的面试题
版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://zhanglulu.blog.51cto.com/352763/87367 |
昨天,中冠公司面试,面试官三个人,两个技术员,问的题目很精巧,回来后感触很深;
第一个人问的第一个问题是:JAVA中的对象是怎么构造的?
我一听,很基础啊,但是之前也有同样的题目给同样的面试者,当然是先进去的人。一般而言,JAVA对象的构造都是通过构造方法,而之前的回答也是一样的,我想,是不是因为要在构造方法的精度细加解释呢,我回答了超类的构造方法,然后本身的构造方法,this指针内调用本类的其他构造方法,层次回答清楚之后,又说明了静态块的实例化,普通域的实例化,但他好象还是不为所动,我一看,不对啊,不应该是这个表情啊;然后解释是不是还要考虑类的加载,考虑ClassLoader以及它相应子类对类的加载,他还是不为所动;现在想想,他想问的问题事实上是Class类的反射的forName方法和newInstance方法还有静态类的工厂方法,目的说穿了就是考察工厂模式,单例模式,隐藏在这个简单问题后面,考察面试者的技术层次和反映能力。
然后他问了个更加基础的问题,public和private的区别?
这个问题一般而言考虑的是类和方法的可见性和访问权限问题,回答的时候,我说明对一个类而言,它若是public,对于包内和包外的其他类都是可以访问的,当时我没有说明内部类的private修饰符,这算是一个大的漏洞,我想,这个应该算是他问这个问题的主要目的,像这样基础的问题,所要牵涉到的必然是应用中极为常用又略显偏深的问题,借以区分面试者的层次,就public和private来说,内部类的private修饰符是关键;private修饰的内部类对所有的其他类隐藏,只对外部类可见,它可以存取所在的外部类的所有私有属性,调用外部类的所有方法。
我之前的逻辑测试分数不理想,他第一句话就是这样告诉我的,还说明是因为倒扣分,我当时没看题目,但是就这样还进了面试肯定很侥幸,我笨笨的告诉了他实际情况,其实就题发挥的话,我肯定可以说明我的逻辑能力很强的,倒扣了那么多分,我还可以跟其他人同台竞技,这个算是明显的面试经验不足;他肯定也考虑到这一点,然后问了第三个题目,如果给你一根质量不均匀的绳子,烧完要一个小时,怎么才能使时间减半?
我首先想到的是他是不是把绳子展开烧,直接回答他说把长的绳子折起来一起烧,他强调是质量不均匀,我想了想,这个跟质量不均匀有什么关系呢,然后问了问,这个是不是脑筋急转弯,是的话,我答不上来,然后说,你能不能告诉我答案,想留一个利索和谦虚的印象,他笑了笑说,这个肯定不是JAVA题,也不是脑筋急转弯,答案是你只要两头一起烧就行了。
如果是这样的话,我的答案明显是对的,因为按照理解的话,必然可以理解成,折在一起的绳子烧一头肯定是两头同时点燃的,他笑了笑,没有问题了,然后跟中间的估计是老板摸样的头说,看他们还有没什么问题?
后来,我细想了下,他对我的印象是最好的,通过这个题目,他想暗示我,我考虑问题太简略,但是不好明说,因为按照当时的场景,应该中间那个人是老板,是投资人,然后左边的那个是台资下属,他估计是这边公司的负责人,另两个人地位比较高,不好表现明显的情绪,借此暗示,我傻傻的还是没反映过来,经验还是太少。
那个陪坐右边的台湾技术员开了口,首先问abstract class 和 interface的区别?
我看过网上的帖子,但是我开口的第一句话是说,按照设计模式,我之前也把阎宏博士的那本《JAVA与设计模式》看完了,我也想让那些人了解,abstract class是强调一个实体,而interface是强调行为,但是abstract class本身强调的是子类对象的共同属性和行为模式的抽象,而interface强调的是对一个实体的附加行为的承诺,一个对象可以实现一个接口来获得额外的行为,一个两者都不能实例化,抽象类变量要指向具体子类的实例,接口要使用接口回调。
再往下面具体点,他问的第二个问题,他要我指出一个常用的具体接口?
我当时应该想到这个肯定是在考察我的colleciton接口层次,考list,set和map接口,但是我估计是等时间太长,足足三个小时,竟然一片空白,回答了acitonListener因为这个我刚好在车上复习了下,印象深刻些,他问我是不是做过applet和swing编程,我说做过,虽然不常做,但是做过。这个回答超级漏洞,他们的想法如果往反面想,我肯定没救,那不是表明其他的程序我没做过,不管极不极端,现在肯定是没办法了,只好当作下次面试的教训。
他就直接问我学过JDBC没,我当然学过,他说,那么为什么JDBC能够访问几种数据库,我回答是因为采用共同的方法,但是方法是采用本地化方法实现的,这个明显有责备的意思了,学过的东西不能提纲挈领的概述出来。
老板一直被挡在电脑后面,看不清,也没提问。不过一直都很和气。 当时最好的一点也就是现场的情绪氛围很好,我表现的很积极,也很主动,他们也不是那么的严肃和刻板。
最后我向他们征求对我的表现评价一下,我估计在技术上,我回答得确实不够严谨,他们也只是笑笑,说还没想好。
面试就这样结束了。
回想整个过程,充满了那种层次化的“陷阱”,面试的要求是很低的,对此有了解即可,但是隐藏着的目的却包含了侧敲旁击的各种考察,技术储备不仅要有,更多的是在适当的场合清晰而大胆表诉出来,智商上的逻辑联系,情商上的沟通和反应能力都在这种看似简单的过程中有条不紊的展开,这次面试也算是我迄今为止所有面试中最精巧的,记下来,当作找工作历程的一个纪念。 本文出自 “似水年华” 博客,请务必保留此出处http://zhanglulu.blog.51cto.com/352763/87367 本文出自 51CTO.COM技术博客 |


zhanglulu
博客统计信息
热门文章
最新评论
友情链接
