前言
本次很荣幸能够邀请这位阿里 P8 的大佬为我们整理了这份 “JAVA 核心面试知识点”,这份资料就比较厉害了,它几乎涵盖了所有的 Java 核心知识点,并且融入了大佬自己的一些经验和思想!
文档涵盖知识:
面试必问的:Java 基础、高并发、多线程、分布式、设计模式、Spring 全家桶、Java、MyBatis、ZooKeeper、Dubbo、Elasticsearch、Memcached、MongoDB、Redis、MySQL、RabbitMQ、Kafka、Linux、Netty、Tomcat 等等知识点详细讲解及面试押题。
而且!
它还有各种思维导图来帮助大家学习、理解!
下面我就来介绍一下这份阿里 P8 大佬所整理的这份 “Java 核心面试知识点” 到底涵盖了多少知识点!
由于整个文档比较全面,内容比较多 ,如有需要获取资料文档的朋友 文末有直达获取地址。
JVM
一、线程
二、JVM 内存区域
-
程序计数器(线程私有)
-
虚拟机栈(线程私有)
-
本地方法区(线程私有)
-
堆(Heap-线程共享)-运行时数据区
-
方法区/永久代(线程共享)
三、JVM 运行时内存
-
新生代
-
老年代
-
永久代
四、垃圾回收与算法
-
如何确定垃圾
-
标记清除算法(Mark-Sweep)
-
复制算法(copying)
-
标记整理算法(Mark-Compact)
-
分代收集算法
五、JAVA 四中引用类型
-
强引用
-
软引用
-
虚引用
-
弱引用
六、GC 分代收集算法 VS 分区收集算法
-
分区收集算法
七、GC 垃圾收集器
-
Serial 垃圾收集器(单线程、复制算法)
-
ParNew 垃圾收集器(Serial+多线程)
-
Parallel Scavenge 收集器(多线程复制算法、高效)
-
Serial Old 收集器(单线程标记整理算法 )
-
Parallel Old 收集器(多线程标记整理算法)
-
CMS 收集器(多线程标记清除算法)
-
G1 收集器
八、JAVA IO/NIO
-
阻塞 IO 模型
-
非阻塞 IO 模型
-
多路复用 IO 模型
-
信号驱动 IO 模型
-
异步 IO 模型
-
JAVA IO 包
-
JAVA NIO
-
Channel
-
Buffer
-
Selector
九、JVM 类加载机制
-
JVM 类加载机制
-
类加载器
-
双亲委派
-
OSGI(动态模型系统)
Java 集合
-
接口继承关系和实现
-
List
-
Set
-
Map
JAVA 多线程并发
-
JAVA 并发知识库
-
JAVA 线程实现/创建方式
-
4 种线程池
-
线程生命周期(状态)
-
终止线程 4 种方式
-
sleep 与 wait 区别
-
start 与 run 区别
-
JAVA 后台线程
-
JAVA 锁
-
线程基本方法
-
线程上下文切换
-
同步锁与死锁
-
线程池原理
-
JAVA 阻塞队列原理
-
CyclicBarrier、CountDownLatch、Semaphore 的用法
-
volatile 关键字的作用(变量可见性、禁止重排序)
-
如何在两个线程之间共享数据
-
ThreadLocal 作用(线程本地存储)
-
synchronized 和 ReentrantLock 的区别
-
ConcurrentHashMap 并发
-
Java 中用到的线程调度
-
进程调度算法
-
什么是 CAS(比较并交换-乐观锁机制-锁自旋)
-
什么是 AQS(抽象的队列同步器)
JAVA 基础
-
JAVA 异常分类及处理
-
JAVA 反射
-
JAVA 注解
-
JAVA 内部类
-
JAVA 泛型
-
JAVA 序列化(创建可复用的 Java 对象)
-
JAVA 复制
Spring 原理
-
Spring 特点
-
Spring 核心组件
-
Spring 常用模块
-
Spring 主要包
-
Spring 常用注解
-
Spring 第三方结合
-
Spring IOC 原理
-
Spring APO 原理
-
Spring MVC 原理
-
Spring Boot 原理
-
JPA 原理
-
Mybatis 缓存
-
Tomcat 架构
微服务
-
服务注册发现
-
API 网关
-
配置中心
-
事件调度(kafka)
-
服务跟踪(starter-sleuth)
-
服务熔断(Hystrix)
-
API 管理
Netty 与 RPC
-
Netty 原理
-
Netty 高性能
-
Netty RPC 实现
-
RMI 实现方式
-
Protoclol Buffer
-
Thrift
Zookeeper
-
Zookeeper 概念
-
Zookeeper 角色
-
Zookeeper 工作原理(原子广播)
-
Znode 有四种形式的目录节点
Kafka
-
Kafka 概念
-
Kafka 数据存储设计
-
生产者设计
-
消费者设计
RabbitMQ
-
概念
-
RabbitMQ 架构
-
Exchange 类型