课程咨询 :0731-88220680

长沙Java培训 > 达内新闻 > Java程序员,你应该准备好这些再去面试(上)
  • Java程序员,你应该准备好这些再去面试(上)

    发布:长沙Java培训      来源:简书      时间:2016-10-18

  • 一名具有3年工作经验的Java程序员应该具备什么样的技能呢?这可能是Java程序员们比较关心的内容。长沙达内java培训这里要说明一下,以下列举的内容不是都要会的东西----但是如果你掌握得越多,最终能得到的评价、拿到的薪水势必也越高。

    1、基本语法

    这包括static、final、transient等关键字的作用,foreach循环的原理等等。今天面试我问你static关键字有哪些作用,如果你答出static修饰变量、修饰方法我会认为你合格,答出静态块,我会认为你不错,答出静态内部类我会认为你很好,答出静态导包我会对你很满意,因为能看出你非常热衷研究技术。

    2、集合

    非常重要,也是必问的内容。基本上就是List、Map、Set,问的是各种实现类的底层实现原理,实现类的优缺点。

    集合要掌握的是ArrayList、LinkedList、Hashtable、HashMap、ConcurrentHashMap、HashSet的实现原理,能流利作答,当然能掌握CopyOnWrite容器和Queue是再好不过的了。另外多说一句,ConcurrentHashMap的问题在面试中问得特别多,大概是因为这个类可以衍生出非常多的问题,关于ConcurrentHashMap,长沙达内java培训给大家提供三点回答或者是研究方向:

    (1)ConcurrentHashMap的锁分段技术

    (2)ConcurrentHashMap的读是否要加锁,为什么

    (3)ConcurrentHashMap的迭代器是强一致性的迭代器还是弱一致性的迭代器

    3、设计模式

    设计模式在工作中还是非常重要、非常有用的,23种设计模式中重点研究常用的十来种就可以了,面试中关于设计模式的问答主要是三个方向:

    (1)你的项目中用到了哪些设计模式,如何使用

    (2)知道常用设计模式的优缺点

    (3)能画出常用设计模式的UML图

    4、多线程

    这也是必问的一块了。因为三年工作经验,所以基本上不会再问你怎么实现多线程了,会问得深入一些比如说Thread和Runnable的区别和联系、多次start一个线程会怎么样、线程有哪些状态。

    假如有Thread1、Thread2、Thread3、Thread4四条线程分别统计C、D、E、F四个盘的大小,所有线程都统计完毕交给Thread5线程去做汇总,应当如何实现?

    聪明的你对这个问题是否有答案呢?不难,java.util.concurrent下就有现成的类可以使用。

    另外,线程池也是比较常问的一块,常用的线程池有几种?这几种线程池之间有什么区别和联系?线程池的实现原理是怎么样的?实际一些的,会给你一些具体的场景,让你回答这种场景该使用什么样的线程池比较合适。

    多线程同步、锁这块也是重点。synchronized和ReentrantLock的区别、synchronized锁普通方法和锁静态方法、死锁的原理及排查方法等等。

上一篇:进程与线程的区别

下一篇:Java程序员,你应该准备好这些再去面试(下)

最新开班日期  |  更多

Java--大数据全日制班

Java--大数据全日制班

开班日期:03/08

Java--零基础业余班

Java--零基础业余班

开班日期:03/08

Java--零基础全日制班

Java--零基础全日制班

开班日期:03/08

Java--大数据业余制班

Java--大数据业余制班

开班日期:03/8

  • 网址:http://cs.java.tedu.cn     地址:长沙市开福区芙蓉中路一段 476 号建鸿达现代城 9 楼
  • 课程培训电话:0731-88220680     全国服务监督电话:400-827-0010
  • 服务邮箱 ts@tedu.cn
  • 2001-2016 达内时代科技集团有限公司 版权所有 京ICP证8000853号-56