一、如何面试一个初级java程序员
既然是初级Java程序员,你这个面试是问技术还是HR。
技术面试
初级的重点考基础,比如Java里老生常谈的String、深克隆和浅克隆、equals和==区别、栈和队的区别用处、内部类的优点等等。其后就是框架,重点问Spring,比如什么是ioc、什么是aop,spring事务管理机制等等。这些基本上答出来问题不大,中间可以穿插1-2个情景问题,然后现场写一个sql分组之类的。
我自己面试初级的,基本上也就差不多这种。也不用刻意为难,都不容易。作为一个入门的初级Java,这些对答如流基本上没什么大问题。
HR面试
不太擅长HR,但是和HR一起面试过,基本上就是自我介绍,以后想怎么发展、薪资之类的,有的会要英文自我介绍。按照HR的说法就是问这些看对方的情绪和答案看这个人是不是靠谱。
二、java面试时遇到不会答或者不会做的,怎么办
坦然说明自己不会,不过自己可以说下第一次碰到这个问题的思路。
首先和问问题的人,确认问题到底是什么,你们两个理解的问题是不是一致的。
通过自己已有的知识,聊聊自己对问题的理解,比如为什么会有这个问题,可能再什么情况下有这个问题,或者这个问题和那些东西相关
说说自己解决问题的思路,虽然没有碰到过,但是自己会采取那些措施去处理问题
如果实在没有任何的思路,那么直接说自己不会也行,最好说说问题相关的东西,让问问题的人知道你是喜欢动脑子的人,不怕问题的人。
三、java面试必问题你在项目中碰到过什么问题
『如果让你来做HashMap扩容,如何实现在不影响读写的情况下扩容?』我觉得逼格高,不是体现在问题多刁钻,知识点多深,而是一个非常明确,无歧义的问题,能考察出面试者多方面的能力。这个问题背后:
1.了解java中,HashMap的实现;如果一个面试者了解这一点,说明至少他关心过java提供的数据类型的实现,甚至极可能看过源码,他应该不会是一个纯粹的苦力。
2.知道『不影响读写的情况下扩容』是什么含义,说明他在工作中了解多线程的相关知识。
3.如果他能提到ConcurrentHashMap中的相关内容,说明他日常编程中有使用到concurrent包,可以继续聊聊,否则他对多线程的使用可能非常初级。
4.如果他能提出一些解决方案,即使不完整,也能看出他对类似cas等算法、分布式一致性等问题的了解程度。这问题是面试官问我的···
四、如何面试java技术经理
这个比较灵活,我这边给一个面试(笔试)样例,主要从技术+管理两个方面开展:
一、业务需求分析题(70分)
某公司对部门员工绩效考核,考核分定量和定性二类考核,每类有多个考核项目,每个考核项目有多个考核指标。
(一)、需求分析举例(20分)
1、模拟实际工作遇到案例分析(5分)。
2、考核项目模拟举例(5分)。
3、考核方案举例(10分)
(二)、解答问题(50分)
1、请分析业务,作业务流程图(5分)
2、请设计“绩效考核管理系统”数据库结构表(15分)
3、通过编码实现对部门员工考核评分基本功能。(伪代码或说明“评分算法”)(20分)
4、多年数据,如何提高查询效率。(10分)
二、管理题。(30分)
1、怎样管理项目?(6分)
2、怎样管理团队?(6分)
3、请设计高并发处理方案(10分)
4、如何提高研发效率(8分)
欢迎关注我、欢迎吐槽评论。
关于java应届生面试题到此分享完毕,希望能帮助到您。