innodb引擎中锁的类型有哪些
乐观锁与悲观锁的使用场景
了解哪些排序算法,讲讲复杂度
手撕归并排序 写了一半没写完让说思路。
爱奇艺二面:二面的时间有点长,问了很多
HashMap原理
链表转红黑树阈值,红黑树转链表阈值,为什么
ConcurrentHashMap原理
CAS及其缺点
NIO原理
用户态到内核态
select,poll,epoll
epoll数据结构
知道的Java设计模式,除了工厂与单例
Synchronized与ReentrantLock区别
Synchronized锁方法和锁代码段的实现
- 主要是对象头(markword)与monitor_enter讲一下
Synchronized会响应中断么
Spring AOP实现原理
线程池参数
若线程池中2个线程,执行完毕,现有新任务会怎样
死锁的条件
从破坏死锁必要条件答如何避免死锁
MySQL隔离级别
InnoDB与MyISAM区别
什么是聚簇索引
MySQL可重复读下如何解决幻读
GAP锁
可重复读与未提交读区别
Redis数据结构及其实现
Redis跳表
缓存击穿,缓存雪崩与缓存穿透的解决方法
Http请求头
Http2.0与1.0的区别
HTTP1.1与1.0的区别
僵尸进程与孤儿进程的区别
拥塞控制原理
AIMD算法中在包丢失情况下,窗口大小
进程通信方法
CMS原理
CMS 中Stop the word阶段
Mybatis $与#的区别
Mybatis与Hibernate的区别
Vue与React的区别
在10亿数中找到一个数(bitmap)
找数据流的中位数(剑指offer)
RabbitMQ与RocketMQ的区别
Git中Rebase和Merge区别
Git的内存结构,实现原理
常用的linux命令
爱奇艺三面:
springboot与spring的区别、优点
mysql事务隔离级别
什么是幻读,如何解决
写SQL,一张表三个字段,学生id,课程id,成绩,查询每一个学生得分最高的那门课
并发了解哪些,说一说线程互斥与线程同步的区别
描述下登录模块怎么实现的,需要考虑哪些问题
如何解决某一时间段内的大量非法请求,答了验证码与接口限流,问接口限流如何设计
分布式session如何实现的
然后开始问之前项目
爱奇艺HR面:
自我介绍
有兴趣爱好吗?
面试了哪些公司,拿到了几个offer?
对爱奇艺了解多少?
说说你的职业规划吧
你有什么想问的吗?
作业帮一面:
聊项目(并发瓶颈、优化方案、并发、分布式锁等)
排序,要求奇数放到前面,偶数放到后面(空间复杂度o(1))
一次http请求过程发生了什么?
springmvc处理过程
mybatis执行过程,原理
为什么握手是三次
数据库索引用的什么结构?
b+树和b树有什么区别?
单例模式
session和cookie
JAVA垃圾回收
作业帮二面:
分享一个你觉得比较有的讲得实习经历
问项目
平时你是怎么学习Java的?
JAVA虚拟机内存模型
syn和lock
可重入锁实现原理
事务用来做什么
lru
网络方面TCP断开time_wait
快排
对工作的方向对语言有要求吗?
看你学Java很多,是因为这方面需求比较大还是?
统计某个字符串的行数统计用什么命令?
有什么要问我的吗?
庆幸自己3个小厂面试都拿到offer,而这次面试给我印象最深刻的是,面试时肯定会谈及以往的工作经历,面试官会在简历中挑出一些点来详细问你,这时候你需要明确的一点是,除了告诉对方你做了什么,做到了什么样的成绩之外,还要突出:你在这个项目中担任什么样的角色?在这个过程中你是怎么思考的?你与其他同事相比,做的比较好的地方有哪些?总之,面试是一门学问,面试前一定要做好准备,祝愿大家都能够面试顺利,拿到心仪offer!
(一)调整自己的心态,正确面对得失
面试中常见的问题,主要是心态,面试调整心态是第一位的,如何调整成最佳心态呢?很多求职者在面试过程中自己思路不清晰,语言不流畅,说话毫无逻辑,会不断否定自己,归根结底都是面试心态问题,所以调整自己的心态,正确面对得失是非常重要的,我的方法是给自己足够的心理暗示。
(二)提升技术,扩宽知识
对于程序员来说,要想成长为一名行业内的大牛大神级别的人物,那么唯一的办法就是通过学习,来不断提升自己的技术,扩宽知识,达到一定的高度和深度。那么如何提升自己的技术,扩宽自己的知识储备呢?
以下是我个人的一些做法,希望可以给各位提供一些帮助:
- 21天啃完283页的pdf文档
**Java部分:**Java基础,集合,并发,多线程,JVM,设计模式
**数据结构算法:**Java算法,数据结构
**开源框架部分:**Spring,MyBatis,MVC,netty,tomcat
**分布式部分:**架构设计,Redis缓存,Zookeeper,kafka,RabbitMQ,负载均衡等
**微服务部分:**SpringBoot,SpringCloud,Dubbo,Docker
- 实战系列:Spring全家桶+Redis等
- 其他相关的电子书:源码+调优
(三)刷题
如何刷题?这是很多现在面试者心中的困惑,我们都知道,面试前刷题是很有必要的,毕竟很多题目都有一定的共性,刷足够题目就能够做到举一反三,甚至在面试时,被问到原题,能够侃侃而谈,那么刷题如何进行呢?建议:最好找一些历年的面试原题,分专题来对自己进行训练。
以下是我私藏的面试题库:
最后
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
[外链图片转存中…(img-08iYswYa-1715203736684)]
[外链图片转存中…(img-NJKBAGrj-1715203736684)]
[外链图片转存中…(img-fxuFIote-1715203736685)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!