最近复习,整理下复习的知识点,慢慢更新。
数据结构
jvm
- 类文件结构
- 类加载过程
- 类加载器
- JVM内存区域
- 对象的创建过程
- 垃圾回收
- 逃逸分析
操作系统
- 进程与线程
- 进程间通讯
- 线程同步方式
- 系统进程调度
- 虚拟内存
- 操作系统内存管理方式
- 页面置换算法
- 死锁
计算机网络
1
数据库
- 数据库基础
-
存储引擎
-
索引
-
查询缓存的使用
-
什么是事务
-
事务的四大特性
-
并发事务带来的问题
-
事务的隔离级别与实现
-
锁机制和InnoDB锁算法
-
大表优化
-
池化思想
-
分库分表
-
一条SQL语句在MySQL中如何被执行
多线程
- Java 多线程知识基础:
- 什么是线程和进程?
- 请简要描述线程与进程的关系,区别及优缺点?
- 说说并发与并行的区别?
- 为什么要使用多线程呢?
- 使用多线程可能带来什么问题?
- 说说线程的生命周期和状态?
- 什么是上下文切换?
- 什么是线程死锁,四个条件?如何避免死锁?
- 说说 sleep() 方法和 wait() 方法区别和共同点?
- 为什么我们调用 start() 方法时会执行 run() 方法,为什么我们不能直接调用 run() 方法?
- Java 多线程知识:
-
synchronized 关键字:① 说一说自己对于 synchronized 关键字的了解;② 说说自己是怎么使用 synchronized 关键字,在项目中用到了吗;③ 讲一下 synchronized 关键字的底层原理;④ 说说 JDK1.6 之后的 synchronized 关键字底层做了哪些优化,可以详细介绍一下这些优化吗;⑤ 谈谈 synchronized 和 ReentrantLock 的区别;⑥单例模式,双检锁实现与原理
-
volatile 关键字: ① 讲一下 Java 内存模型;② 说说 synchronized 关键字和 volatile 关键字的区别。
-
ThreadLocal:① 简介;② 原理;③ 内存泄露问题。
-
线程池:① 为什么要用线程池?;② 实现 Runnable 接口和 Callable 接口的区别;③ 执行 execute() 方法和 submit() 方法的区别是什么呢?;④ 如何创建线程池;⑤Threadpool参数分析
-
Atomic 原子类: ① 介绍一下 Atomic 原子类;② JUC 包中的原子类是哪 4 类?;③ 讲讲 AtomicInteger 的使用;④ 能不能给我简单介绍一下 AtomicInteger 类的原理。
-
AQS :① 简介;② 原理;③ AQS 常用组件。
-
CAS