金三银四,二月就要准备!

前言

只有光头才能变强。

文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y

大家都知道金三银四这么一个道理,跳槽前都要提前准备,所以二月就应该开始复习啦!


这篇文章主要对我发过的文章进行整理,归纳一些我认为面试可能会考到的知识点,希望对大家有所帮助。

校园春招也陆续开启了,再次提醒:如果是大三的同学,我在这里强烈建议去准备(体验)春招实习生。(大四的当然就不用说啦)

一、Java

1.1Java集合

Java集合是必考的,建议阅读常见集合类的源码(挑重要的方法来看)

1.2Java多线程

Java多线程也是必考的,其实我记录过我曾经真实遇见过的多线程面试题,这里给大家分享一下。

  1. 多线程了解多少啊?使用多线程会有什么问题?你是怎么理解“线程安全”的?

  2. 如果我现在想要某个操作等待线程结束之后才执行,有什么方法可以实现?为什么要用CountDownLatch?CountDownLatch的底层是什么?(引出AQS)

  3. synchronized关键字来说一下,它的用途是什么?synchronized底层的原理是什么?

  4. 线程安全的容器有哪些?(着重于ConcurrentHashMap、CopyWriteOnArrayList与其他非线程安全容器的区别以及它们的具体实现)

  5. ThreadLocal你了解过吗?主要是用来干什么的?具体的源码实现原理来说一下吧

  6. 产生死锁的条件是什么?我们可以如何避免死锁?(可延伸到操作系统层面上的死锁)

  7. synchronized锁和ReentrantLock锁有什么区别呀?

  8. 线程池你应该也看过吧,来说说为什么要用线程池。JDK默认实现了几个线程池,分别有xxx(自然地ThreadPoolExecutor构造函数的常用几个参数你也得一起说出来)

  9. 。。。还有其他等等

对应的博客文章有:

1.3设计模式

设计模式需要理解三个左右,熟悉这三个设计模式的用途、应用、写法,在面试的时候问到就不虚了。

对应的设计模式文章:

1.4JVM和NIO

其他的Java基础知识就不谈了,JVM和NIO都是比较常考的,应该对这有一个了解:

更多的Java文章可以在公众号"Java"菜单栏可以找到。

二、数据库

简单的SQL语句是必要掌握的,在笔试的时候也会常常遇见手写SQL。而面试一般会问数据库的锁和索引,事务隔离级别也常考。

更多的数据库文章可以在公众号"JavaWeb"菜单栏可以找到。

如果在简历技能清单上写了Redis,那最好还是看看以下的三个问题(缓存击穿、缓存雪崩、缓存与数据库双写一致性):

更多的Redis文章可以在公众号"JavaEE"菜单栏可以找到。

三、框架

对于Java框架,比较爱考Spring,其余的 Struts2/Hibernate/Mybatis其实都不咋考

我认为常见的Spring面试题

  • Spring IOC的概念

    • (为什么要用IOC、为什么不直接new对象、跟直接new对象有什么区别、工厂模式理解了没有?)

  • Spring AOP的概念

    • (AOP是什么意思、AOP能做什么、xxx可以使用AOP来做吗、AOP的底层原理来说一下、代理模式了解多少)

  • Spring MVC的工作流程(原理)

    • (如果你说自己接触过Struts2,很可能就问SpringMVC与Struts2的区别)

  • Spring中是如何管理Bean的(Bean的生命周期)

  • Spring事务管理知识

对应的Spring文章:

更多的Spring文章可以在公众号"JavaEE"菜单栏可以找到。

四、基础

如果是参加校招的同学, 操作系统、计算机网络、数据结构与算法非常非常非常重要的(虽然我学得不咋地..苦逼)。

操作系统:

  • 死锁

  • 进程和线程

  • CPU/内存/硬盘的工作流程(原理)

  • selectpollepoll简单区别

计算机网络:

  • http(包括http版本区别,https原理)

  • TCP粘包,拆包

  • 从浏览器输入地址到响应的整个过程(越详细越好,这个问题可以涵盖整个计算机网络了)

数据结构与算法:

  • 几个常见的排序算法,常见的数据结构必须要会!

  • 刷题为主,leetcode刷起来

  • 《剑指Offer》

对应的文章:

这方面的文章我的公众号确实是写得比较少,后续还得继续加油努力。更多的基础数据结构文章可在公众号"Java"菜单栏下可以找到。

五、其他

上面的四点是比较常考的,如果有时间有兴趣,也不妨看看我之前整理过的关于其他知识点的面试题:

六、关于项目

学生:

如果自己还没撸过一个小项目,建议根据自己的想法撸个小项目(或者跟着视频做一个也行)。

为啥要撸个小项目?

  • 对SSM、SpringBoot等知识点的应用,尽可能了解每个框架的实际用处是什么。

  • 撸完项目,可以写在简历上,面试的时候就依照自己的想法来讲讲当时的项目是怎么做的,期间遇到了什么问题,当时是怎么解决的。(在简历上有个项目,总比没的好!)

如果已经有了小项目了,应当总结一下自己做项目的亮点(在简历和面试的时候就可以有话可说了)


最后

乐于输出干货的Java技术公众号:Java3y。公众号内有200多篇原创技术文章、海量视频资源、精美脑图,不妨来关注一下!

640?wx_fmt=jpeg

有帮助?好看!转发! 640
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值