Java学习经验分享(2021秋招)
背景
楼主本硕均为电子信息相关专业,之前使用的主要语言也是C,到研究生阶段才开始自学Java
,做的两个项目也比较简单,一个是JavaGuide
的RPC
项目还有一个是基于SpringBoot
的博客项目
面试情况
- 字节(三面一个问题没回答出来,挂)
- 百度(主管面透露自己不想去北京,挂)
- 阿里(成都意向)
- 美团(上海意向)
- 京东(成都意向)
- 华为(成都意向)
- 小米(武汉意向)
- 远景(上海意向)
- 大华(成都意向)
- 农行(成都意向)
- 中兴(成都意向)
- 招银(成都意向)
- 荣耀(西安意向)
- 快手(北京意向)
- 贝壳(池子中)
一、基础
1、Java基础
- B站尚硅谷宋红康
Java
基础视频 - 《Java核心技术卷Ⅰ》(10~13章可跳过)
- 常见容器的源码剖析,包括但不限于
HashMap
、ConcurrentHashMap
、ArrayList
、PriorityQueue
等,基本要做到熟稔于心,可以配合常见面试题来抓重点
2、JAVA虚拟机
- 《深入理解JAVA虚拟机》(
JVM
圣经,建议全文精读,多次翻看。如果没时间,重点看第2、3、7章) - 常见的虚拟机排错与调优技巧
3、高并发
- 《Java并发编程之美》(分析源码的书籍,建议全文精读,对于之后分析JUC包下的源码帮助很大)
- 《Java多线程编程实战指南(核心篇)》(国人写的,写的相当好。主要讲解高并发一些思想和设计,最后两章关于内存屏障的部分建议精读)
- JUC源码剖析,包括不限于
ConcurrentHashMap
、AbstractQueuedSynchronizer
、ConditionObject
、CopyOnWriteArrayList
、线程池原理、阻塞队列源码等(这部分重点把AQS
原理和ConditionObject
搞明白,再看其他源码会轻松很多)
4、计算机基础
非科班的同学需要格外注意这部分,这部分知识学起来比较枯燥,但是面试基本又是必问。如果时间充裕建议系统性的学一下,推荐B站上清华大学的操作系统课程和湖南科技大学一个老师的计算机网络课程。
- 计算机网络,B站UP主:湖科大教书匠;公众号:小林coding的《图解网络》(基本涵盖了70%以上的面试题,建议全文精读);《图解HTTP》,可以当手册翻阅
- 操作系统,B站:清华操作系统原理;公众号:小林coding的《图解系统》(基本涵盖了70%以上的面试题,建议全文精读)
5、数据库
- 《MySQL必知必会》(入门经典,短小精悍,三四天就可以看完)
- 《MySQL技术内幕:InnoDB存储引擎》(1~8章,有时间建议精读,配合《高性能MySQL》基本能解决绝大部分数据库面试题)
- 《高性能MySQL》(第1、4、5、6章精读,其它章节看个人情况,这本书实在太厚了)
关于后两本书,初学者看起来会比较抽象,建议配合面试题和一些博客一起食用,带着问题看会好很多
6、算法与数据结构
- 《剑指Offer》配合
LeetCode
(算法建议每天都刷一两道,千万不要停,需要保持手感。LC上的热题100和剑指上的原题建议多刷几遍) - 《大话数据结构》(二叉树、链表、队列、堆、栈等,一些经典算法一定要知道)
7、设计模式与设计原则
- 关注一些常见的设计模式即可,包括不限于单例、工厂、代理、观察者等。最好能结合框架中的设计模式学习
- 常见的设计原则,开闭、单一、迪米特等
8、Linux
- B站韩顺平Linux教程
- 常见故障排查指令
二、框架
1、SSM框架
B站尚硅谷雷丰阳的SSM全家桶
Spring
源码重点分析IOC
、AOP
源码、事务实现等源码和思想,同时关注一些常用注解的区别与实现。这部分建议自己debug
分析SpringMVC
源码重点分析请求处理过程与父子容器启动过程MyBatis
重点关注MyBaits
缓存、Mapper
接口与XML
文件映射实现原理以及一些常见面试题即可
2、SpringBoot
B站尚硅谷雷丰阳的SpringBoot系列视频
- 重点关注
SpringBoot
自动配置原理 - 关注一些常用注解的使用、实现与区别
- 背一些常见面试题即可
3、Netty
Netty
主要是项目需要所学,这部分看个人所需
Netty
的线程模型、IO
模型,事件处理过程等- 推荐简书闪电侠的Netty源码分析博客
Netty
的应用场景以及开源框架了解
三、中间件
1、Redis
B站尚硅谷Redis视频
《Redis设计与实现》(必看,建议全文精读,能够解决80%以上的
Redis
面试题)业务中常见的缓存问题,包括不限于一致性、数据倾斜等,这部分建议多看面经
2、消息中间件
主流消息中间件包括RabbitMQ
、RocketMQ
、Kafka
等。时间充裕的同学可以多了解,楼主对于后两者了解不多,对于时间不够的同学,熟练掌握一种消息中间件即可
- B站编程不良人RabbitMQ
- 《RabbitMQ实战指南》
- 常见消息队列场景题,包括不限于异步重试、解耦、削峰等,这部分建议多看面经和博客
3、Zookeeper
- B站黑马Zookeeper教程
ZAB
协议、Leader
选举、一致性、分布式锁等相关面试题
四、项目
- 基于Netty和Zookeeper的RCP框架
- 基于
SpringBoot
的博客项目 - 慕课网秒杀项目
- 不管什么项目,如果写在简历上一定要搞清楚其中的难点和优化点,如果能加入自己的思想和优化策略更是再好不过。如果一个项目只知道怎么做,但不明所以建议不要写在简历上
五、其他
- 微服务相关的一些基本概念,包括不限于服务治理、设计思想等。这部分楼主掌握的也不多,故不做推荐
- 分布式事务与理论,包括不限于
2PC
、3PC
、CAP
理论、BASE
理论、分布式锁等。这部分重点在于理解与抽象,建议多看博客 - 一些常见的排错技能,包括不限于CPU负载过高、死锁、
FullGC
、慢查询、内存泄漏等 - 常见海量数据处理题目,这部分网上博客有很多分享,主要思路是分而治之或者借用一些中间件等
- 常见业务场景题
六、学习渠道推荐
0、B站
- 尚硅谷(基本上主流技术栈都有)
- 黑马
- ...(基本上能想到的技术都能找到学习视频)
1、公众号
- 小林coding
- Java面试题精选
- JavaGuide
- Java知音
2、网站博客
- JavaGuide八股(必背八股)
- CSNotes(基础八股)
- note-submit(框架和中间件等完整剖析)
- Java知音(常见面试题剖析)
- 美团技术团队
- 阮一峰的网络日志
七、建议
- 提前准备,提前准备,提前准备。现在
Java
后台是越来越卷了,秋招的金九银十基本不太适合互联网大厂。根据今年的秋招情况,应该改为金七银八,基本上到九月大厂的HC就被提前批和实习的同学占满了。有鉴于此,如果有机会实习的同学一定要去实习,首先实习的面试经历能够帮助自己在秋招时提前进入状态(即使不能去实习,也可以进行实习面试,这样在准备秋招时更能抓住重点);其次,对于非科班的同学实习的经历在简历筛选中具有较大的优势,如果在实习期间能做一些实际业务,在面试的时候也能更好的吹水 - 保持心态,不要受身边同学的影响对自己否定,秋招一般坚持到最后的都能拿到不错的
offer
- 眼光不要局限于大厂,近两年制造业的崛起,很多制造企业开的薪资不比大厂低(比如海康、TP、汇顶、大华等今年薪资都很顶,楼主前期眼光就局限于大厂,最后到9月开奖时已经高攀不起了)
- 对于非科班的同学,除了
Java
技术栈外,一定要重点注意计网和操作系统,大厂很重视基础,反而对框架这些问的不是特别多 - 每场面试一定要复盘,总结自己不会的点和回答的不利索的地方。在面试中除了专业知识外还要要注重逻辑和表达,不要一股脑的将所有知识揉在一起
- 写在简历上的项目的知识一定要弄懂,否则很影响面试官的印象
Java学习经验分享(2021秋招)相关推荐
- 面经+经验分享|2019秋招算法岗复盘
一.背景介绍 我这几天就要去公司入职了,岗位是人工智能工程师,曾参加了2019年校园招聘.转眼间,2020届校园招聘也马上开始了,我想把自己找工作的一些经历分享出来,算是对我2018年下半年找工作经验 ...
- 2021秋招Java面试八股文让629人成功进入大厂,堪称2021最强
前言 2021秋招即将来临,很多同学会问Java面试八股文有必要背吗? 我的回答是:很有必要.你可以讨厌这种模式,但你一定要去背,因为不背你就进不了大厂. 国内的互联网面试,恐怕是现存的.最接近科举考 ...
- 2020春招 / 2021秋招阿里、腾讯、字节、快手、美团 JAVA 开发岗面试高频问题总结
2020春招 / 2021秋招阿里.腾讯.字节.快手.美团 JAVA 开发岗面试高频问题总结 2.1 进程和线程的区别? 2.2 进程的调度算法有哪些?(主要) 2.3 常用 IO 模型? 2.4 s ...
- Day663.大佬学习经验分享 -Java业务开发常见错误
大佬学习经验分享 Hi,我是阿昌,今天学习记录分析的是关于某大佬的学习经验分享. 大佬工作这些年来,经常会有同学来找大佬沟通学习和成长,他们的问题整体可以归结为两个. 一是,长期参与 CRUD 业务开 ...
- 小米公司2021秋招面试题目整理
[推荐阅读] 小米嵌入式软件工程师笔试题目解析 大疆笔试题目解析 岗位:嵌入式软件工程师(相机驱动岗).面试时间:40分钟. 以下问题面试者全部答出,已offer,薪资请去小程序offershow上查 ...
- 聊聊2021秋招互联网薪资
作者 | 武汉在逃热干面(来源知乎) 编辑 | NewBeeNLP 正好经历了2021的秋招,就简单分享下去年互联网秋招的薪资情况吧. Offer评级 互联网其实包含很多岗位,包括算法.开发.测试.产 ...
- 2021秋招面试整理
以下为2021秋招,Java后端面试的文档记录. 图片是用自带的画图工具,可以点击放大可以看清晰. 因为在忙毕业论文,10月底才开始准备秋招.由于在杭州某大厂暑期实习体验感实在不好,又想留在上海拿户口 ...
- 「代码家」的学习过程和学习经验分享【转】
图灵丛书的一句话说的很好,Standing on the shoulders of giants,是的,我们一直站在巨人的肩上,我们起步都在沿着他们的轨迹前行,之后慢慢的在前人的开发基础或者规范上写出 ...
- Unity3D 之 学习路线与学习经验分享
转自:https://blog.csdn.net/qq_22521529/article/details/83108837 Unity3D学习路线与学习经验分享 该博文出自作者15游02 丁祺,是一篇 ...
最新文章
- stl-map/set
- (原创)Android6.0亮屏流程之Keyguard Window绘制
- 平面设计python教程_什么是平面设计? - Python学习教程的个人空间 - OSCHINA - 中文开源技术交流社区...
- 使用PyCharm快速安装TensorFlow
- 太牛逼了!这个开源项目,可以把我从视频中移除!
- Java-Scala编程规范超精简
- 手机PDF文档如何解密去除不能编辑的限制?
- oppor11点击Android,OPPO R11怎么网络共享?OPPO R11三种共享网络设置教程
- energy plus matlab,Energyplus教程系列1—Energyplus到底能干啥.ppt
- c语言水电费系统,急求C水电费管理系统
- 短视频矩阵系统,抖音矩阵系统,抖音获客系统源码。look
- outlook2019登录126邮箱(imap)
- 码云的注册与使用,很简单
- leet343整数拆分
- 登录页面(含后台)login.php
- uniapp 判断用户是否安装app, 没有则安装
- python假分数约分,数学中假分数怎么约分
- python居然可以画樱花
- python 计算TIFF图像相关性 根据相关性筛选特征 使用PCA提取主要特征
- iOS 对接TopOn聚合广告心得
热门文章
- 玩游戏用哪个牌子的蓝牙耳机最好?打游戏无延迟的蓝牙耳机
- 对朴素贝叶斯的理解(python代码已经证明)
- C++从0到1手写一个哈希表
- 一篇文章打通PostgreSql(pgsql)的正则匹配: like, similar to, ~。 以及与 mysql 正则匹配的区别。
- jquery的$.alerts.alert怎么实现点击后跳转页面
- protobuf3 import的使用和多proto代码生成和cmake中引用protobuf
- selenium 您的连接不是私密连接 解决办法
- SDRAM W9825G6KH
- 一粒沙子的爱情故事之三
- 消息加密和解密(一)