-
说说反射的用途及实现
-
Http 请求的 GET 和 POST 方式的区别
-
MVC设计思想
-
什么是Java序列化和反序列化;如何实现Java序列化;或者请描述
Serializable接口的作用
重载和重写的区别
进程和线程
-
线程和进程的概念
-
并行和并发的概念
-
创建线程的方式及实现
-
进程间通信的方式
-
说说 CountDownLatch、CyclicBarrier 原理和区别
-
说说 Semaphore 原理
-
说说 Exchanger 原理
-
ThreadLocal 原理分析;ThreadLocal为什么会出现OOM,出现的深
层次原理
-
讲讲线程池的实现原理
-
线程池的几种实现方式
-
线程的生命周期;状态是如何转移的
锁机制
-
什么是线程安全?如何保证线程安全?
-
重入锁的概念;重入锁为什么可以防止死锁?
-
产生死锁的四个条件
-
如何检查死锁
-
volatile 实现原理
-
synchronized 实现原理(对象监视器)
-
synchronized 与 lock 的区别
-
AQS 同步队列
-
CAS 无锁的概念;乐观锁和悲观锁
-
常见的原子操作类
-
什么是 ABA 问题;出现 ABA 问题 JDK 是如何解决的
-
乐观锁的业务场景及实现方式
-
Java 8 并发包下常见的并发类
-
偏向锁、轻量级锁、重量级锁、自旋锁的概念
数据库
-
DDL、DML、DCL 分别指什么
-
explain 命令
-
脏读、幻读、不可重复读
-
事务的隔离级别
-
数据库的几大范式
-
说说分库与分表设计
-
分库与分表带来的分布式困境与对应之策
说说 SQL 优化之道
-
存储引擎的 InnoDB 与 MyISAM 区别、优缺点、使用场景
-
索引类别(B+树索引、全文索引、哈希索引);索引的区别
-
什么是自适应哈希索引(AHI)
-
为什么要用 B+tree 作为 MySql 索引的数据结构
-
聚集索引与非聚集索引的区别
-
limit 20000 加载很慢怎么解决
-
常见的几种分布式 ID 的设计方案
JVM
-
JVM 运行时内存区域划分
-
常见的 GC 回收算法及其含义
-
常见的 JVM 性能监控和故障处理工具类
-
JVM 性能调优
-
类加载器、双亲委派模型
-
类加载的过程
-
强引用、软引用、弱引用、虚引用
-
Java 内存模型 JMM
在对上面的内容做了准备后,开始面试,先从小公司开始面,小公司1-2面技术,大公司3-5轮技术,一般都是一面基础,二面进阶,三面优化和场景,四面问规划,五面hr.
面试自我介绍
被人没太多的优点,双非本科,只不过大学学的数学专业。英语水平一般。
优势:
1 大学拿过奥数三等奖,ACM 大赛二等奖,当你的优秀大学生。
2 良好的沟通交流能力
3.较强的学习能力和逻辑思维能力
简历写上,自我评价潜力好!此处有装逼的嫌疑。
劣势:
1.16年毕业,经验不多,非常尴尬,上不上,下不下的情况。
2.毕业于双非本科,只要是本科就基本没问题,但有的公司要985.211的,并且还要30岁以内的。
3.前一家公司是传统行业,加入项目组时,项目稳定,每天就是有bug就修复,优化一下,其他时间就是学习的,聊骚各干各的,工作2年多跟在养老一样,每天都是 用一句话说就是编程5分钟,扯淡2小时,项目经验严重不足,很怕开发过很难的需求。
这一点是最伤的,很多公司看项目经历,结果你告诉面试官我写的需求都是垃圾。
学习方式
我自己情况,项目和学历肯定无法加分的。我自己对此也有清晰的认识,因此我在平时抓紧空闲时间学习和复习技术点。
1.看面试题
正常人第一步肯定都会看面试题,我也不例外,在看的过程中,我发现有些文章写的不错,对我帮助不小值得推荐 。
2.对问题深入理解
在看面试题的过程,你会遇到一些自己没接触过的或者以前没深入学习过的知识,例如最常问的HashMap内部实现原理,这就促使你得开始去看jdk的源码或者是学习一些新的东西。看源码是很重要的一步,起步很难,但是会让你收益良多。
3.熟悉项目的代码和需求
把项目中不错的需求拿出来,看会,代码熟悉好,将整个功能的流程和涉及的东西吃透。项目是面试中必问的环节,一般是以一个功能点为基础展开问,因此你必须对这个功能有很深的认识,不能有模糊的地方。如果有时间,能把涉及到的知识点也搞懂最好。
4.网上做题和刷题
头条会远程面试, 一般会做题。建议去本文开头的一些刷题网站多做些题目。
5.总结记录
把自己每天学到的内容记录下来,可以让自己更有动力的复习,技术是一个枯燥的过程,你必须让自己时刻保持有动力。
投简历、约面试环节
1.投简历渠道
BOSS直聘、猎聘网。拉钩等(一般不靠谱),找靠谱猎头也行。
2.简历不要海投 除非两个情况。
1)没有社招面试经验:建议采取海投的方式,只要职位要求跟自己比较匹配都可以投,累计面试经验。
2)社招面试经验已经足够:投那些职位匹配、公司满意的职位。公司评价可以去看准网,企业查等。
3.投简历没下文
简历确实亮点不多,学历不好,项目不行,容易被HR给刷掉,因此他们看得最直接的就是你上家的公司和你毕业的学校,如果你不是从牛逼的公司/学校出来,可能会碰到和我一样的情况,应对的办法就是多投。
4.一天约几家面试合适?
最理想的情况为2家面试,上午一般在10点左右,下午一般在2点左右。建议把理想的公司放下午,因为下午的时间比较充足,可以让公司更充分的了解你。我开始面的时候,每次都是上午面的不好,下午面的不错。
5.是否该裸辞?
我一开始是边上班边投,然后利用调休时间,或者请假去面试。后来,面试机会越来越多,请假太频繁了,自己都不好意思了,并且自己也已经有足够的信心,这个时候我选择了裸辞。
裸辞还有一个原因是,在面试过程中你会发现,遇到公司要人紧急的,如果你的入职流程过长可能错过这个公司。
6.注意事项
-
千万别迟到。
-
做好特殊情况处理,带简历、充电宝、纸巾、伞。
面试
1笔试常见的问题
-
面试常见的问题上面给的面试题链接基本都有。
-
手写代码:手写代码一般考单例、排序、线程、消费者生产者 排序。
-
写SQL很常考察group by、内连接和外连接
2.面试1-5面总结
-
让你自我介绍
-
做两道算法题(刷题必中)
-
问Java基础知识
-
java 高级进阶就是我准备的那些
-
问项目中指责和做了什么
-
业务情景问题,例如:你的一个功能上了生产环境后,服务器压力骤增,该怎么排查。
-
对职业的规划
-
你有什么想问面试官的
-
问期望待遇
3.常问的知识要点
-
集合相关问题(必问)
-
线程相关问题(必问)
-
JVM相关问题(必问)
-
设计模式相关问题(必问)
-
数据库相关问题,针对Mysql(必问)
主流框架相关问题:
Spring的设计模式。
-
Spring中AOP。
-
Spring注入bean的方式。
-
什么是IOC,什么是依赖注入。
-
Spring是单例还是多例,怎么修改。
-
Spring事务隔离级别和传播性。
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)
学习分享,共勉
这里是小编拿到的学习资源,其中包括“中高级Java开发面试高频考点题笔记300道.pdf”和“Java核心知识体系笔记.pdf”文件分享,内容丰富,囊括了JVM、锁、并发、Java反射、Spring原理、微服务、Zookeeper、数据库、数据结构等大量知识点。同时还有Java进阶学习的知识笔记脑图(内含大量学习笔记)!
资料整理不易,读者朋友可以转发分享下!
Java核心知识体系笔记.pdf
中高级Java开发面试高频考点题笔记300道.pdf
架构进阶面试专题及架构学习笔记脑图
Java架构进阶学习视频分享
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
等大量知识点。同时还有Java进阶学习的知识笔记脑图(内含大量学习笔记)!**
资料整理不易,读者朋友可以转发分享下!
Java核心知识体系笔记.pdf
[外链图片转存中…(img-nBnQ9Xmq-1713749694924)]
中高级Java开发面试高频考点题笔记300道.pdf
[外链图片转存中…(img-OuZREwAl-1713749694925)]
架构进阶面试专题及架构学习笔记脑图
[外链图片转存中…(img-8s4F1COP-1713749694925)]
Java架构进阶学习视频分享
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!