面试经验分享(初级Java岗)

    六月底离职,先后面了几家公司(大多为外包),由于是初级岗,所以问题都不是很难,基本上面的多了都掌握规律了。在此分享出来,希望能给准备跳坑的程序员一点参考,大神绕道。

首先对面试官问的方向做一个分类:

  1. Java基础(问的真的很基础,不用担心)
  2. Mysql(喜欢问Mysql的优化。。)
  3. 设计模式(答几个常见的即可,不会深问)
  4. 框架(Springboot)
  5. Linux(常见命令吧,查看内存,查看日志啊等等)
  6. 简单的算法(比如,排序算法,常见于笔试)

由于面了不久还是能想起来的,接下来做一个回忆吧


Java基础:

No1.集合

集合差不多是最喜欢问的了。一般问的都比较抽象。譬如:

集合了解吗?讲一讲Java中的集合吧

回答建议:

可以分成两条线Collection与Map,其中Collection有可以沿着List与Set两条线去讲。

这样的划分主要是基于功能上的区别,而性能选择的话,就要对应物理结构了。

比如,你可以比较下ArrayList与LinkedList

也可以比较HashTable与HashMap的区别等

有一个面试官问道了HashMap从Jdk1.7->1.8做了哪些改进

其他的问题还有:

HashMap的key与value允许为空吗?

No2.字符串

最喜欢问的就是String,StringBuilder,StringBuffer的区别。

No3.多线程

一般会先问,如何创建多线程?

有些面试官可能会问到线程锁等。这个问题死记硬背是没有价值的,只有结合实际情况理解才行。

No4.多态

作为Java的三大特性之一,多态也是有必要了解下的。

No5.Java的垃圾回收机制

No6.Object类

包括会问到Object类有哪些方法等

equals方法是重点。

No7.final关键字

Mysql:

关于mysql,面试官最喜欢问的问题就是mysql的优化了。

当然,也有直接让写sql语句的。除此之外还有问道Mysql事务的机制的等。

 

设计模式:

面试官经常问的就是,你了解设计模式吗?能说一下你了解的设计模式吗?

我一般经常回答的几个:单例模式,工厂模式,适配器模式等

 

 

 

 

 

你可能感兴趣的:(Java面试宝典)