课程咨询 :13623629309

太原PHP培训 > 达内新闻 > 这里有一份面经,请查收(2)
  • 这里有一份面经,请查收(2)

    发布:太原PHP培训      来源:伯乐在线      时间:2016-07-20

  • 技术面二面

    约好的10:00电面,11:30也没来,后来咨询了HR才说面试官出差去了。。。好吧,毕竟公司还在创业初期,管理上有疏忽可以理解。第二次约的2面同样是10:00,这次是10:27来的电话。额。。。这此的面试官好像是CTO,面的也比较深一些:

    1.谈谈你对HashMap的理解,怎么样去保证线程安全?

    博主对HashMap巴拉巴拉的一阵,可以参考:Java集合框架:HashMap. 然后有三种方法可以保证hashMap的线程安全:换成HashTable;用synchronizedMap包装一下HashMap;换成ConcurrentHashMap。然后补了一句ConcurrentHashMap是比较推崇的,然后就被问了另一个问题:说一下ConcurrentHashMap的实现原理。然后解释了一下,最后问了个问题:用HashMap怎么去实现ConcurrentHashMap?当时想了一个,觉得不okay,想说第二个方案就被制止了。现在想想:把HashMap用Collections.synchronizedMap()包装一下替换屌Segment即可。(如果不知所云,请阅读一下ConcurrentHashMap的源码先~~)

    补充:这里还问了平常用了那些线程安全的队列,包括:ConcurrentLinkedQueue, ConcurrentLinkedDeque以及BlockingQueue系列。

    2.Java集合中有哪些常用的类?ArrayList的上级(父类或者接口)是什么,HashMap的上级又是什么?

    常用的类:Map系(HashMap,LinkedHashMap,TreeMap, WeakHashMap, EnumMap等);List系(ArrayList, LinkedList, Vector, Stack等);Set系(HashSet, LinkedHashSet, TreeSet); 工具类(Collections,Arrays)。这里如果说出来了,就必须对其十分了解,比如博主在另一家互联网公司W的面试过程中就被问到:你对java集合了解有多少?博主说:我看过所有集合的源码。然后就被问到:Collections.sort()里面的实现是什么排序算法?这个问题确实够冷门的!幸亏看过,不然就被打脸了。。(TimSort, 加强型归并排序)

    ArrayList extends AbstractList implements List, RandomAccess, Cloneable, Serializable. 然后AbstractList又继承了AbstractCollection. 然后List和AbstractCollection又都implements了Collection.

    HashMap extends AbstractMap implements Map, Cloneable, Serializable.

    3.css导入方式?

    这个只要2周不没看过就会忘记。。博主当时就忘记了。。超简单的题,但是又是最不起眼的题,细节做的不够好。

    php编程开发

    4.js中的ajax操作的方式?这个写的太多了,所以答起来很easy

    5.一句话概括NIO。博主说了一通,包括Reactor模式神马的。但是面试官说:你说的也很对,但是不是我想要的结果。斯巴达。。。

    6.设计数据库的一道题,比较简单,不赘述。

    7.常用的linux命令?(这个被用了好多次了)

    太原达内php培训班

    8.Spring IOC的原理?答案:基于反射

    9.数据库事务隔离级别?

    Uncommit Read; Commit Read; Repeated Read; Serializable.

    10.memcached与Redis的区别?

    技术三面

    之前说过博主对数据库相关的知识,除了会写SQL之外,其他的基本白痴。这次面试将近40mins,差不多被问了30mins的数据库的知识。比如:数据库优化;访问多少条数据,数据库的反应延迟是多少;表和视图的区别。

    当然还有一些其他的,譬如Spring中的注解在xml文件中怎么配置?

    太原达内php

    面试过程中有两种问题比较难答:第一种,冷门知识,比如Colletions.sort()用到什么排序算法?第二种就是上面的这种特别简单,用过的都知道,但是像这种在Spring配置文件中配置完之后就基本不动了,所以特别容易遗忘。

    还有类似的比如:Spring中的自动装配怎么配置?

    HR面

    最后是HR面,这个最简单,只要言语不过激都是okay的,主要谈谈在原来公司主要做什么,为什么要换份新工作,期望薪资神马的。

    (ps: 谈薪资是门艺术,同样两个人,面试打分也是一样的,但是薪资会谈和不会谈之间可能相差很多,这门艺术博主还在研究中,虽然有所收获,但是还是不敢出来卖弄,等博主把人事六大块之一的薪酬领悟之后再来探讨探讨。)

    总结

    博主总结几个心得,仅供参考:

    面试第一要素:不要紧张,如果你真是技术族,而且对技术有所痴迷,一聊起技术来根本不会紧张。

    面试第二要素:要对简历上的内容了如指掌,包括原理源码,如果略懂或者根本就是用了几天就再也没用过的技术就从简历上删掉吧,否则被面试官抓住不放就糟糕了。

    面试第三要素:学会引导面试,掌握主动权。这门技艺需要多去混点面筋,然后自我优化之后,一般都可以掌握。

    面试第四要素:做人要低调。面试你这个职位的人的技术肯定比这个职位高好几个level, 不要觉得你回答了你非常熟悉的问题就高调起来,面试官随时可以挖出一堆坑来让你往里面跳。

    面试第五要素:要自信。有些面试官会对某些你回答完问题之后会补一句:你确定?这时候就要看你自己了,有可能面试官再提醒你,也有可能再诈你。归根结底还是要技术掌握的够硬,底气就足一些。

上一篇:这里有一份面经,请查收(1)

下一篇:怎样提升 Spark 中排序的性能?

最新开班日期  |  更多

php高级开发名企定制班(剩2个名额)

php高级开发名企定制班(剩2个名额)

开班日期:12-30

php高级开发周末班(剩5个名额)

php高级开发周末班(剩5个名额)

开班日期:12-30

php高级开发免费试听(剩5个名额)

php高级开发免费试听(剩5个名额)

开班日期:12-30

更多高级开发工程师精品班

更多高级开发工程师精品班

开班日期:12-30

  • 地址:山西省太原市小店区学府街长治路高新国际A座24层
  • 课程培训电话:13623629309     全国服务监督电话:400-827-0010
  • 服务邮箱 ts@tedu.cn
  • 2001-2016 达内国际公司(TARENA INTERNATIONAL,INC.) 版权所有 京ICP证08000853号-56

    在线客服系统