校招屡次被刷,对找工作陷入深深的迷茫...怎么办

前两天有粉丝联系我,说他软件工程专业,大厂校招屡次被刷,有一个已经到了三面,还是被刷了,感觉很绝望,不想找工作了。邮箱里也有很多信息,初试都没有过,找工作太难了,好累啊 真的被打击到了。

想起两年前我一个小学弟的经历,他也是校招的时候往腾讯投了一次简历,结果很明显凉了,随后这个理想就被暂时放下了,但是这个种子一直埋在心里,想着总有一天会再次挑战的。

这两年他除了工作以外,其余时间基本上都在学习,打磨自己的技术水平。也会坚持上论坛写写东西,也因此结识了很多优秀的小伙伴,从他们身上这个小学弟学到了特别多东西,把这次面试分享出来,也是希望可以帮助到更多的人。

面试经历

一面(远程视频面)

  1. 自我介绍

  2. 项目介绍

  3. Redis介绍

  4. 了解redis源码吗

  5. 了解redis集群吗

  6. Hashmap的原理

  7. hashmap容量为什么是2的幂次

  8. hashset的源码

  9. object类你知道的方法

  10. hashcode和equals

  11. 你重写过hashcode和equals么,要注意什么

  12. 假设现在一个学生类,有学号和姓名,我现在hashcode方法重写的时候,只将学号参与计算,会出现什么情况?

  13. 往set里面put一个学生对象,然后将这个学生对象的学号改了,再put进去,可以放进set么?并讲出为什么

  14. Redis的持久化?有哪些方式,原理是什么?

  15. 讲一下稳定的排序算法和不稳定的排序算法

  16. 讲一下快速排序的思想

我特意整理了一下,有很多问题不是靠几句话能讲清楚,所以整理成一份文档,用来回答这些面试题。很多问题其实答案很简单,但是背后的思考和逻辑不简单。

二面(现场)

  1. List item

  2. 自我介绍

  3. 讲一下数据的acid

  4. 什么是一致性

  5. 什么是隔离性

  6. Mysql的隔离级别

  7. 每个隔离级别是如何解决

  8. Mysql要加上nextkey锁,语句该怎么写

  9. Java的内存模型,垃圾回收

  10. 线程池的参数

  11. 每个参数解释一遍

  12. 然后面试官设置了每个参数,给了是个线程,让描述出完整的线程池执行的流程

  13. Nio和IO有什么区别

  14. Nio和aio的区别

  15. Spring的aop怎么实现

  16. Spring的aop有哪些实现方式

  17. 动态代理的实现方式和区别

  18. Linux了解么

  19. 怎么查看系统负载

  20. Cpu load的参数如果为4,描述一下现在系统处于什么情况

  21. Linux,查找磁盘上最大的文件的命令

  22. Linux,如何查看系统日志文件

  23. 手撕算法:leeetcode原题 22,Generate Parentheses,给定 n

  24. 对括号,请写一个函数以将其生成新的括号组合,并返回所有组合结果。

三面

  1. 说一说Java内存区域。

  2. 什么是分布式系统?

  3. 分布式系统你会考虑哪些方面?

  4. 为什么说TCP/IP协议是不可靠的?

  5. OSI有哪七层模型?TCP/IP是哪四层模型。

  6. 讲一讲TCP协议的三次握手和四次挥手流程。

  7. 为什么TCP建立连接协议是三次握手,而关闭连接却是四次握手呢?为什么不能用两次握手进行连接?

  8. 为什么TCP TIME_WAIT状态还需要等2MSL后才能返回到CLOSED状态?

  9. 什么是DoS、DDoS、DRDoS攻击?如何防御?

  10. 描述一下Java异常层次结构。

  11. 什么是检查异常,不受检查异常,运行时异常?并分别举例说明。

  12. finally块一定会执行吗?

  13. 正常情况下,当在try块或catch块中遇到return语句时,finally语句块在方法返回之前还是之后被执行?

  14. try、catch、finally语句块的执行顺序。

  15. Java虚拟机中,数据类型可以分为哪几类?

  16. 怎么理解栈、堆?堆中存什么?栈中存什么?

  17. 为什么要把堆和栈区分出来呢?栈中不是也可以存储数据吗?

  18. 在Java中,什么是是栈的起始点,同时也是程序的起始点?

  19. 为什么不把基本类型放堆中呢?

  20. Java中的参数传递时传值呢?还是传引用?

  21. Java中有没有指针的概念?

  22. Java中,栈的大小通过什么参数来设置?

  23. 一个空Object对象的占多大空间?

  24. 对象引用类型分为哪几类?

  25. 讲一讲垃圾回收算法。

  26. 如何解决内存碎片的问题?

大家在去面试自己中意的公司之前建议大家先去练练手,我首先去了美团和快手,每次都会带上录音笔,这样可以更快的发现自己的错误并改正,校招看重的是基础,社招也重基础但是更多的是考察项目,上面一些题可能有些很简单,但是某些点面试官会深挖。

面试前我也准备了挺久,前面主要是看电子书,学习笔记视频什么的,后面就是刷面试真题。这里免费分享一份Java常用工具包学习思维导图+Java核心进阶知识整理,是我当初学习的时候找圈内一位大佬要的。目前已经收到了七八个网友的反馈,说是面试问到了很多这里面的知识点。

内容涉及:Java开发介绍、Java数组、Java面向对象、常用基础类、集合、IO流、多线程、异常、反射等。

先给大家看看内容截图,完整版本PDF文档可以在文末免费领取。

一:Java开发介绍

  • DOS常用命令
  • JVM、JRE、JDK之间的关系
  • Java开发环境的搭建:安装JDK,配置环境变量
  • Java入门程序(Java的开发流程)
  • Java的注释,标识符、标识符的命名规范
  • Java基本数据类型
  • 变量和常量的定义及初始化
  • Java的运算符
  • 运算符的优先级
  • Java分支语句之if...else
  • 循环的嵌套
  • 方法的定义
  • 方法的形参和实参
  • 方法的递归调用

image-20220114150700200

二、Java数组

  • Java 数组的定义
  • Java 数组的声明
  • 数组的优势与局限
  • 数组的遍历访问(普通循环,增强for循环)
  • 数组元素的顺序查找
  • 数组元素的冒泡法排序
  • Arrays工具类的使用
  • 二维数组

image-20220114151749983

三、Java面向对象

  • 面向对象设计思想
  • 面向对象的分析与设计
  • Java与面向对象
  • 类中成员变量的定义与意义
  • 构造方法的定义和调用
  • 面向对象的封装特性
  • 局部变量和成员变量的作用域问题
  • 静态属性、静态方法、静态代码块
  • 面向对象的继承特性
  • 继承中构造方法的细节
  • 面向对象的多态特性
  • 抽象方法与抽象类
  • 接口

image-20220114151135824

四、异常

  • 异常的概念
  • 异常的分类
  • 异常的理解
  • 常见异常介绍
  • 运行时异常
  • 编译时异常
  • 运行和编译异常区别
  • 异常的处理方式之捕获异常
  • 异常的处理方式之抛出异常
  • 异常的处理方式之断点调试
  • 断点调试之引导运行步骤
  • 自定义异常
  • 异常关键字处理
  • 关键字执行流程
  • 异常总结

image-20220114151211151

五、集合

  • 集合的概念和作用
  • 集合和数组的区别
  • 集合框架体系介绍
  • 集合框架之Collection接口
  • ArrayList和LinkedList的方法使用
  • ArrayList和LinkedList各自的工作原理分析原理分析
  • 使用多种方式遍历集合
  • HashSet和LinkedHashSet各自的工作原理分析
  • 集合框架之Map接口
  • 泛型的使用
  • Collections工具类的使用

image-20220114151313399

六、IO流

  • File类的作用
  • File类中常用方法的使用介绍
  • 使用File类操作文件和文件夹
  • 相对路径和绝对路径的介绍
  • IO流的概念和工作原理
  • IO流的分类
  • 文件流的使用
  • 转换流的使用
  • 缓冲流的使用
  • 对象流的使用
  • 内存流的使用
  • 使用不同的流实现文件内容的拷贝

image-20220114151336759

七、多线程

  • 进程和线程的介绍
  • 进程和线程之间的区别与联系
  • 线程实现方式之继承自Thread类
  • 线程实现方式之实现Runnable接口
  • 线程实现方式之线程池
  • 线程的生命周期
  • 线程中常用方法的使用

image-20220114151649366

 我把一些常用Java工具包的思维导图做了汇总,持续更新中,方便读者查阅。

从这份文档截图中就可以看到这份资料总结得非常全面,有需要的话,点击下方名片,扫码即可免费获取,如果觉得本文对你有帮助,可以转发关注支持一下。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:游动-白 设计师:我叫白小胖 返回首页

打赏作者

二十一世紀難民

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值