-
hashCode 与 equals (重要)
-
为什么 Java 中只有值传递?
-
简述线程、程序、进程的基本概念。以及他们之间关系是什么?
-
线程有哪些基本状态?
-
关于 fifinal 关键字的⼀些总结
-
Java 中的异常处理
-
Java 序列化中如果有些字段不想进⾏序列化,怎么办?
-
获取⽤键盘输⼊常⽤的两种⽅法
-
Java 中 IO 流
-
常⻅关键字总结:static,fifinal,this,super
-
深拷⻉ vs 浅拷⻉
Java基础题答案解析
Java集合
=======
-
说说List,Set,Map三者的区别?
-
Arraylist 与 LinkedList 区别?
-
ArrayList 与 Vector 区别呢?为什么要⽤Arraylist取代Vector呢?
-
说⼀说 ArrayList 的扩容机制吧2.2.5 HashMap 和 Hashtable 的区别
-
HashMap 和 HashSet区别
-
HashSet如何检查重复
-
HashMap的底层实现
-
HashMap 的⻓度为什么是2的幂次⽅
-
HashMap 多线程操作导致死循环问题
-
ConcurrentHashMap 和 Hashtable 的区别
-
ConcurrentHashMap线程安全的具体实现⽅式/底层具体实现
-
comparable 和 Comparator的区别
-
集合框架底层数据结构总结
-
如何选⽤集合?
Java集合答案解析
多线程
===
-
什么是线程和进程?
-
请简要描述线程与进程的关系,区别及优缺点?
-
说说并发与并⾏的区别?
-
为什么要使⽤多线程呢?
-
使⽤多线程可能带来什么问题?
-
说说线程的⽣命周期和状态?
-
什么是上下⽂切换?
-
什么是线程死锁?如何避免死锁?
-
说说 sleep() ⽅法和 wait() ⽅法区别和共同点?
-
为什么我们调⽤ start() ⽅法时会执⾏ run() ⽅法,为什么我们不能直接调⽤ run() ⽅
-
法?
-
说⼀说⾃⼰对于 synchronized 关键字的了解
-
说说⾃⼰是怎么使⽤ synchronized 关键字,在项⽬中⽤到了吗
-
synchronized关键字最主要的三种使⽤⽅式
-
讲⼀下 synchronized 关键字的底层原理
-
说说 JDK1.6 之后的synchronized 关键字底层做了哪些优化,可以详细介绍⼀下这些优化吗
-
谈谈 synchronized和ReentrantLock 的区别
-
讲⼀下Java内存模型
-
说说 synchronized 关键字和 volatile 关键字的区别
-
ThreadLocal原理及ThreadLocal 内存泄露问题
-
实现Runnable接⼝和Callable接⼝的区别
-
执⾏execute()⽅法和submit()⽅法的区别是什么呢?
-
线程池原理分析
-
能不能给我简单介绍⼀下 AtomicInteger 类的原理
-
AQS 原理分析
多线程答案解析
这些文档都是已经打包好的,有需要的朋友三连之后私信我关键字“面试真题”或者查看下方即可免费获取!
JVM
===
-
介绍下 Java 内存区域(运⾏时数据区)
-
说⼀下Java对象的创建过程
-
对象的访问定位有哪两种⽅式?
-
说⼀下堆内存中对象的分配的基本策略
-
Minor Gc和Full GC 有什么不同呢?
-
如何判断对象是否死亡?(两种⽅法)
-
简单的介绍⼀下强引⽤,软引⽤,弱引⽤,虚引⽤
-
如何判断⼀个常量是废弃常量?
-
如何判断⼀个类是⽆⽤的类?
-
垃圾收集有哪些算法,各⾃的特点?
-
HotSpot为什么要分为新⽣代和⽼年代?
-
常见的垃圾回收器有哪些?
-
类加载过程
JVM面试问题答案解析
网络
==
-
OSI与TCP/IP各层的结构与功能,都有哪些协议?
-
TCP 三次握⼿和四次挥⼿(⾯试常客)
-
TCP,UDP 协议的区别
-
TCP 协议如何保证可靠传输
-
ARQ协议
-
滑动窗⼝和流量控制
-
拥塞控制
-
在浏览器中输⼊url地址 ijk 显示主⻚的过程(⾯试常客)
-
状态码
-
各种协议与HTTP协议之间的关系
-
HTTP⻓连接,短连接
-
HTTP是不保存状态的协议,如何保存⽤户状态?
-
Cookie的作⽤是什么?和Session有什么区别?
-
HTTP 1.0和HTTP 1.1的主要区别是什么?
-
URI和URL的区别是什么?
-
HTTP 和 HTTPS 的区别?
网络面试题答案解析
数据结构
====
-
Java 集合框架中的队列 Queue
-
HashSet 和 TreeSet 底层数据结构
-
List的常⻅实现类ArrayList 和 LinkedList 源码学习
-
Map
-
⼆叉树
-
完全⼆叉树
-
满⼆叉树
-
堆
-
⼆叉查找树(BST)
-
平衡⼆叉树(Self-balancing binary search tree)
-
红⿊树
-
B-,B+,B*树
-
LSM 树
数据结构答案解析
算法
==
-
⼏道常⻅的字符串算法题总结
-
最⻓公共前缀
-
回⽂串
-
两数相加
-
翻转链表
-
链表中倒数第k个节点
-
删除链表的倒数第N个节点
-
合并两个排序的链表
-
剑指offer部分编程题
-
跳台阶问题
-
变态跳台阶问题
-
⼆维数组查找
-
替换空格题⽬描述:
-
数值的整数次⽅
-
调整数组顺序使奇数位于偶数前⾯
-
链表中倒数第k个节点
-
反转链表
-
合并两个排序的链表
-
⽤两个栈实现队列
-
栈的压⼊,弹出序列
算法示例答案解析
数据库
===
-
MySQL存储引擎
-
字符集及校对规则
-
索引
-
查询缓存的使⽤
-
什么是事务?
-
事物的四⼤特性(ACID)
-
并发事务带来哪些问题?
-
事务隔离级别有哪些?MySQL的默认隔离级别是?
-
锁机制与InnoDB锁算法
-
⼤表优化
-
解释⼀下什么是池化设计思想。什么是数据库连接池?为什么需要数据库连接池?
-
分库分表之后,id 主键如何处理?
-
⼀条SQL语句在MySQL中如何执⾏的
-
MySQL⾼性能优化规范建议
-
⼀条SQL语句执⾏得很慢的原因有哪些?
MySQL数据库答案解析
Redis
=====
-
为什么要⽤ redis/为什么要⽤缓存
-
为什么要⽤ redis ⽽不⽤ map/guava 做缓存?
-
redis 的线程模型
-
redis 和 memcached 的区别
-
redis 常⻅数据结构以及使⽤场景分析
-
redis 设置过期时间
-
redis 内存淘汰机制(MySQL⾥有2000w数据,Redis中只存20w的数据,如何保证Redis中的数据都是热点数据?)
-
redis 持久化机制(怎么保证 redis 挂掉之后再重启数据可以进⾏恢复)
-
redis 事务
-
缓存雪崩和缓存穿透问题解决⽅案
-
如何解决 Redis 的并发竞争 Key 问题
-
如何保证缓存与数据库双写时的数据⼀致性?
最后
在面试前我整理归纳了一些面试学习资料,文中结合我的朋友同学面试美团滴滴这类大厂的资料及案例
由于篇幅限制,文档的详解资料太全面,细节内容太多,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!
大家看完有什么不懂的可以在下方留言讨论也可以关注。
觉得文章对你有帮助的话记得关注我点个赞支持一下!
y 问题
- 如何保证缓存与数据库双写时的数据⼀致性?
最后
在面试前我整理归纳了一些面试学习资料,文中结合我的朋友同学面试美团滴滴这类大厂的资料及案例
[外链图片转存中…(img-7GaGd9cQ-1714197845329)]
[外链图片转存中…(img-JgncRqr4-1714197845329)]
由于篇幅限制,文档的详解资料太全面,细节内容太多,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!
大家看完有什么不懂的可以在下方留言讨论也可以关注。
觉得文章对你有帮助的话记得关注我点个赞支持一下!