美国上市公司,专注Java培训21年

Java程序员面试经验分享


第一次工作面试,虽然成功了,但是有许多不足的地方,需要反思和改正。

因为时间与距离的原因,两次面试都是电话面试进行的,第一次面试一个面试官,面试时间将近20分钟,第二次面试,两个面试官先后问问题,整个面试将近50分钟。面试结果是通过。面试有一段时间了,可能有一些面试问题忘记了,现已入职。

第一次面试:

问的基本上都是Java基础的知识,简单的问了些问题,问题大致是以下几个方面的:

1、Java集合类,ArrayList LinkedList HashMap等 集合类的线程安全问题 底层数据结构 数组和链表的使用场景 还问到了HashMap的源码

2、多线程方面:线程生命周期 线程状态 线程池

3、Java内存模型 CAS 原子操作 volatile内存语义 功能

4、Static final 关键字 类加载机制初始化顺序

5、Switch case 击穿现象等

第二次面试:

问的框架方面和项目方面的问题比较多

1、Java的几大特性 继承 封装 多态 抽象

2、问使用的框架 spring AOP IOC原理及实现(反射 代理 源码)

3、设计模式:单例模式

4、版本控制器Git 基本命令

5、Java多线程方面问的比较多 重排序 结合多场景问是否发生重排序 线程池构建 线程复用

6、类锁 对象锁 静态锁 结合多场景提问

7、Volatile synchronized 实现同步的其他方式 ReenTrantLook等

8、类加载机制

9、 JVM内存模型 虚拟机栈 本地方法栈 堆 方法区 程序计数器 stackoverflowerror异常等

10、 Netty框架+socket 观察者模式 缓存 通道

11、 网络爬虫 url判重

12、 因为之前写过一个仿Spring框架,让我讲解实现方式及流程

13、 Web容器的工作原理

14、 问到反射相关的问题

总结:

1、千万不要太紧张,过度的紧张会影响思路,导致该说的,会说的,都说不清楚甚至说不上来;

2、没有必要问完问题之后马上就回答,可以组织一下自己的语言,然后在回答,回答问题最好有条理,分条分步,这样显得思路很清晰,很熟练;

3、讲话一定要自信,然后语气和语速要和平时一样沉稳,不要显得很急促,或者很沉闷;

4、问一个问题,能多说就多说,在短的时间内,把自己会的东西尽可能多的展示出来,尽量说的有深度,而不是广度。说的太广,给人一种飘渺,什么都懂,也只是懂一点的感觉。从是什么,应用场景,如何应用,原理,底层实现方式,源码这样的方式或思路去回答问题。回答的有深度,就让面试官觉得这个人很行,研究的很透彻;

5、面试中尽量说自己擅长的部分,自己不擅长的方面少说,如果问到的问题确实是你不了解的,可以直接说不清楚或不会,干净利落的回答下一题,一方面拖拖拉拉的回答,给面试官不好的印象,更致命的是影响自己的心态,甚至影响整个面试过程;

6、如果是电话面试或视频一定要找一个自己熟悉的,安静的环境。

建议:

1、建议大家有时间多看一些源码,这样面试的时候,结合源码讲解回答问题,就很有说服力,经常研究源码的人,编码风格和习惯肯定都不错的,思路和设计上有突出的见解,这让面试官很放心;

2、平时学习的时候一定要不停的钻研,直到底层实现,掌握原理,设计方式等;

3、可以多参加互联网级别的讲座,面试模拟等活动,了解动态,平时多练兵,打仗才不怂;

4、平时要多总结,多思考,最好形成文档,当进入公司之后就会发现,没有文档就什么都做不了。

最后说一句,无论多少人在说工作难找,优秀的人才总是每个公司都要抢的。达内的很多学员毕业后就进了BAT,一方面是学的技能好,还有一方面是,达内和企业的合作关系,可以直接推荐面试,还会为大家做面试指导,成功率自然是高出很多。

免责声明:内容来源于公开网络,若涉及侵权联系尽快删除!


【免责声明】本文部分系转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,如涉及作品内容、版权和其它问题,请在30日内与我们联系,我们会予以重改或删除相关文章,以保证您的权益!

Java开发高端课程免费试学

大咖讲师+项目实战全面提升你的职场竞争力

  • 海量实战教程
  • 1V1答疑解惑
  • 行业动态分析
  • 大神学习路径图

相关推荐

更多
  • Java高级工程师岗位要求
    Java高级工程师岗位要求
    Java高级工程师岗位要求,Java高级工程师是企业中非常关键的技术岗位,主要负责软件的设计、开发、测试和维护工作。具体岗位要求可能因企业的规模、行业、产品和技术栈的不同而有所差异,但通常包括以下几个方面: 详情>>

    2024-03-05

  • 面试Java开发工程师一般问什么问题?
    面试Java开发工程师一般问什么问题?
    面试Java开发工程师一般问什么问题?面试Java开发工程师时,面试官通常会从多个角度评估应聘者的技能和经验,包括基础知识、编程能力、项目经验、问题解决能力、沟通能力以及对Java技术的理解。以下是一些常见的面试问题: 详情>>

    2024-02-29

  • 如何用Java开发游戏?
    如何用Java开发游戏?
    如何用Java开发游戏?使用Java开发游戏可以分为几个步骤,下面是一些基础的指导: 详情>>

    2024-02-29

  • Java编程的工作怎么样?
    Java编程的工作怎么样?
    Java编程的工作怎么样?Java编程的工作在软件开发领域是非常广泛和需求的。以下是关于Java编程工作的一些信息: 详情>>

    2024-02-23

  • Java开班时间

    收起