Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
wushizhenking
JavaGuide
提交
434d3a09
J
JavaGuide
项目概览
wushizhenking
/
JavaGuide
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
J
JavaGuide
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
434d3a09
编写于
3月 25, 2019
作者:
S
SnailClimb
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Update 链接错误
上级
19bd7cd3
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
70 addition
and
376 deletion
+70
-376
docs/HomePage.md
docs/HomePage.md
+70
-66
docs/README.md
docs/README.md
+0
-310
未找到文件。
docs/HomePage.md
浏览文件 @
434d3a09
...
@@ -9,152 +9,156 @@
...
@@ -9,152 +9,156 @@
### 基础
### 基础
*
[
Java 基础知识回顾
](
./
J
ava/Java基础知识.md
)
*
[
Java 基础知识回顾
](
./
j
ava/Java基础知识.md
)
*
[
J2EE 基础知识回顾
](
./
J
ava/J2EE基础知识.md
)
*
[
J2EE 基础知识回顾
](
./
j
ava/J2EE基础知识.md
)
*
[
Collections 工具类和 Arrays 工具类常见方法
](
./
J
ava/Basis/Arrays%2CCollectionsCommonMethods.md
)
*
[
Collections 工具类和 Arrays 工具类常见方法
](
./
j
ava/Basis/Arrays%2CCollectionsCommonMethods.md
)
*
[
Java常见关键字总结:static、final、this、super
](
./
J
ava/Basis/final、static、this、super.md
)
*
[
Java常见关键字总结:static、final、this、super
](
./
j
ava/Basis/final、static、this、super.md
)
### 容器
### 容器
*
**常见问题总结:**
*
**常见问题总结:**
*
[
这几道Java集合框架面试题几乎必问
](
./
J
ava/这几道Java集合框架面试题几乎必问.md
)
*
[
这几道Java集合框架面试题几乎必问
](
./
j
ava/这几道Java集合框架面试题几乎必问.md
)
*
[
Java 集合框架常见面试题总结
](
./
J
ava/Java集合框架常见面试题总结.md
)
*
[
Java 集合框架常见面试题总结
](
./
j
ava/Java集合框架常见面试题总结.md
)
*
**源码分析:**
*
**源码分析:**
*
[
ArrayList 源码学习
](
./
J
ava/ArrayList.md
)
*
[
ArrayList 源码学习
](
./
j
ava/ArrayList.md
)
*
[
【面试必备】透过源码角度一步一步带你分析 ArrayList 扩容机制
](
./
J
ava/ArrayList-Grow.md
)
*
[
【面试必备】透过源码角度一步一步带你分析 ArrayList 扩容机制
](
./
j
ava/ArrayList-Grow.md
)
*
[
LinkedList 源码学习
](
./
J
ava/LinkedList.md
)
*
[
LinkedList 源码学习
](
./
j
ava/LinkedList.md
)
*
[
HashMap(JDK1.8)源码学习
](
./
J
ava/HashMap.md
)
*
[
HashMap(JDK1.8)源码学习
](
./
j
ava/HashMap.md
)
### 并发
### 并发
*
[
并发编程面试必备:synchronized 关键字使用、底层原理、JDK1.6 之后的底层优化以及 和ReenTrantLock 的对比
](
./
J
ava/synchronized.md
)
*
[
并发编程面试必备:synchronized 关键字使用、底层原理、JDK1.6 之后的底层优化以及 和ReenTrantLock 的对比
](
./
j
ava/synchronized.md
)
*
[
并发编程面试必备:乐观锁与悲观锁
](
./
EssentialContentForI
nterview/面试必备之乐观锁与悲观锁.md
)
*
[
并发编程面试必备:乐观锁与悲观锁
](
./
essential-content-for-i
nterview/面试必备之乐观锁与悲观锁.md
)
*
[
并发编程面试必备:JUC 中的 Atomic 原子类总结
](
./
J
ava/Multithread/Atomic.md
)
*
[
并发编程面试必备:JUC 中的 Atomic 原子类总结
](
./
j
ava/Multithread/Atomic.md
)
*
[
并发编程面试必备:AQS 原理以及 AQS 同步组件总结
](
./
J
ava/Multithread/AQS.md
)
*
[
并发编程面试必备:AQS 原理以及 AQS 同步组件总结
](
./
j
ava/Multithread/AQS.md
)
*
[
BATJ都爱问的多线程面试题
](
./
J
ava/Multithread/BATJ都爱问的多线程面试题.md
)
*
[
BATJ都爱问的多线程面试题
](
./
j
ava/Multithread/BATJ都爱问的多线程面试题.md
)
*
[
并发容器总结
](
./
J
ava/Multithread/并发容器总结.md
)
*
[
并发容器总结
](
./
j
ava/Multithread/并发容器总结.md
)
### JVM
### JVM
*
[
可能是把Java内存区域讲的最清楚的一篇文章
](
./
J
ava/可能是把Java内存区域讲的最清楚的一篇文章.md
)
*
[
可能是把Java内存区域讲的最清楚的一篇文章
](
./
j
ava/可能是把Java内存区域讲的最清楚的一篇文章.md
)
*
[
搞定JVM垃圾回收就是这么简单
](
./
J
ava/搞定JVM垃圾回收就是这么简单.md
)
*
[
搞定JVM垃圾回收就是这么简单
](
./
j
ava/搞定JVM垃圾回收就是这么简单.md
)
*
[
《深入理解Java虚拟机》第2版学习笔记
](
./
J
ava/Java虚拟机(jvm).md
)
*
[
《深入理解Java虚拟机》第2版学习笔记
](
./
j
ava/Java虚拟机(jvm).md
)
### I/O
### I/O
*
[
BIO,NIO,AIO 总结
](
./
Java/BIO%2CNIO%2CAIO%20summary
.md
)
*
[
BIO,NIO,AIO 总结
](
./
java/BIO-NIO-AIO
.md
)
*
[
Java IO 与 NIO系列文章
](
./
J
ava/Java%20IO与NIO.md
)
*
[
Java IO 与 NIO系列文章
](
./
j
ava/Java%20IO与NIO.md
)
### Java 8
### Java 8
*
[
Java 8 新特性总结
](
./
J
ava/What's%20New%20in%20JDK8/Java8Tutorial.md
)
*
[
Java 8 新特性总结
](
./
j
ava/What's%20New%20in%20JDK8/Java8Tutorial.md
)
## 网络
## 网络
*
[
计算机网络常见面试题
](
./
计算机网络与数据通信
/计算机网络.md
)
*
[
计算机网络常见面试题
](
./
network
/计算机网络.md
)
*
[
计算机网络基础知识总结
](
./
计算机网络与数据通信
/干货:计算机网络知识总结.md
)
*
[
计算机网络基础知识总结
](
./
network
/干货:计算机网络知识总结.md
)
*
[
HTTPS中的TLS
](
./
计算机网络与数据通信
/HTTPS中的TLS.md
)
*
[
HTTPS中的TLS
](
./
network
/HTTPS中的TLS.md
)
## 操作系统
## 操作系统
### Linux相关
### Linux相关
*
[
后端程序员必备的 Linux 基础知识
](
./
操作系统
/后端程序员必备的Linux基础知识.md
)
*
[
后端程序员必备的 Linux 基础知识
](
./
operating-system
/后端程序员必备的Linux基础知识.md
)
*
[
Shell 编程入门
](
./
操作系统
/Shell.md
)
*
[
Shell 编程入门
](
./
operating-system
/Shell.md
)
## 数据结构与算法
## 数据结构与算法
### 数据结构
### 数据结构
-
[
数据结构知识学习与面试
](
./
数据结构与算法
/数据结构.md
)
-
[
数据结构知识学习与面试
](
./
dataStructures-algorithms
/数据结构.md
)
### 算法
### 算法
-
[
算法学习与面试
](
./
数据结构与算法
/算法.md
)
-
[
算法学习与面试
](
./
dataStructures-algorithms
/算法.md
)
-
[
算法总结——几道常见的子符串算法题
](
./
数据结构与算法
/搞定BAT面试——几道常见的子符串算法题.md
)
-
[
算法总结——几道常见的子符串算法题
](
./
dataStructures-algorithms
/搞定BAT面试——几道常见的子符串算法题.md
)
-
[
算法总结——几道常见的链表算法题
](
./
数据结构与算法
/Leetcode-LinkList1.md
)
-
[
算法总结——几道常见的链表算法题
](
./
dataStructures-algorithms
/Leetcode-LinkList1.md
)
-
[
常见安全算法(MD5、SHA1、Base64等等)总结
](
./
数据结构与算法
/常见安全算法(MD5、SHA1、Base64等等)总结.md
)
-
[
常见安全算法(MD5、SHA1、Base64等等)总结
](
./
dataStructures-algorithms
/常见安全算法(MD5、SHA1、Base64等等)总结.md
)
## 数据
存储
## 数据
库
### MySQL
### MySQL
*
[
MySQL 学习与面试
](
./
数据存储
/MySQL.md
)
*
[
MySQL 学习与面试
](
./
database
/MySQL.md
)
*
[
【思维导图-索引篇】搞定数据库索引就是这么简单
](
./
数据存储
/MySQL%20Index.md
)
*
[
【思维导图-索引篇】搞定数据库索引就是这么简单
](
./
database
/MySQL%20Index.md
)
*
[
一千行MySQL学习笔记
](
./
数据存储
/一千行MySQL命令.md
)
*
[
一千行MySQL学习笔记
](
./
database
/一千行MySQL命令.md
)
### Redis
### Redis
*
[
Redis 总结
](
./
数据存储
/Redis/Redis.md
)
*
[
Redis 总结
](
./
database
/Redis/Redis.md
)
*
[
Redlock分布式锁
](
./
数据存储
/Redis/Redlock分布式锁.md
)
*
[
Redlock分布式锁
](
./
database
/Redis/Redlock分布式锁.md
)
*
[
如何做可靠的分布式锁,Redlock真的可行么
](
./
数据存储
/Redis/如何做可靠的分布式锁,Redlock真的可行么.md
)
*
[
如何做可靠的分布式锁,Redlock真的可行么
](
./
database
/Redis/如何做可靠的分布式锁,Redlock真的可行么.md
)
## 系统设计
## 系统设计
### 设计模式
### 设计模式
-
[
设计模式系列文章
](
./
Java
/设计模式.md
)
-
[
设计模式系列文章
](
./
system-design
/设计模式.md
)
### 常用框架
### 常用框架
#### Spring
#### Spring
-
[
Spring 学习与面试
](
./
主流框架
/Spring学习与面试.md
)
-
[
Spring 学习与面试
](
./
system-design/framework
/Spring学习与面试.md
)
-
[
Spring中bean的作用域与生命周期
](
./
主流框架
/SpringBean.md
)
-
[
Spring中bean的作用域与生命周期
](
./
system-design/framework
/SpringBean.md
)
-
[
SpringMVC 工作原理详解
](
./
主流框架
/SpringMVC%20%E5%B7%A5%E4%BD%9C%E5%8E%9F%E7%90%86%E8%AF%A6%E8%A7%A3.md
)
-
[
SpringMVC 工作原理详解
](
./
system-design/framework
/SpringMVC%20%E5%B7%A5%E4%BD%9C%E5%8E%9F%E7%90%86%E8%AF%A6%E8%A7%A3.md
)
#### ZooKeeper
#### ZooKeeper
-
[
可能是把 ZooKeeper 概念讲的最清楚的一篇文章
](
./
主流框架
/ZooKeeper.md
)
-
[
可能是把 ZooKeeper 概念讲的最清楚的一篇文章
](
./
system-design/framework
/ZooKeeper.md
)
-
[
ZooKeeper 数据模型和常见命令了解一下,速度收藏!
](
./
主流框架
/ZooKeeper数据模型和常见命令.md
)
-
[
ZooKeeper 数据模型和常见命令了解一下,速度收藏!
](
./
system-design/framework
/ZooKeeper数据模型和常见命令.md
)
### 数据通信
### 数据通信
-
[
数据通信(RESTful、RPC、消息队列)相关知识点总结
](
./
计算机网络与数据通信
/数据通信(RESTful、RPC、消息队列
)
.md)
-
[
数据通信(RESTful、RPC、消息队列)相关知识点总结
](
./
system-design/data-communication
/数据通信(RESTful、RPC、消息队列
)
.md)
-
[
Dubbo 总结:关于 Dubbo 的重要知识点
](
./
计算机网络与数据通信
/dubbo.md
)
-
[
Dubbo 总结:关于 Dubbo 的重要知识点
](
./
system-design/data-communication
/dubbo.md
)
-
[
消息队列总结:新手也能看懂,消息队列其实很简单
](
./
计算机网络与数据通信
/message-queue.md
)
-
[
消息队列总结:新手也能看懂,消息队列其实很简单
](
./
system-design/data-communication
/message-queue.md
)
-
[
一文搞懂 RabbitMQ 的重要概念以及安装
](
./
计算机网络与数据通信
/rabbitmq.md
)
-
[
一文搞懂 RabbitMQ 的重要概念以及安装
](
./
system-design/data-communication
/rabbitmq.md
)
### 网站架构
### 网站架构
-
[
一文读懂分布式应该学什么
](
./
架构
/分布式.md
)
-
[
一文读懂分布式应该学什么
](
./
system-design/website-architecture
/分布式.md
)
-
[
8 张图读懂大型网站技术架构
](
./
架构
/8%20张图读懂大型网站技术架构.md
)
-
[
8 张图读懂大型网站技术架构
](
./
system-design/website-architecture
/8%20张图读懂大型网站技术架构.md
)
-
[
【面试精选】关于大型网站系统架构你不得不懂的10个问题
](
./
架构/[面试精选]
关于大型网站系统架构你不得不懂的10个问题.md
)
-
[
【面试精选】关于大型网站系统架构你不得不懂的10个问题
](
./
system-design/website-architecture/【面试精选】
关于大型网站系统架构你不得不懂的10个问题.md
)
## 面试指南
## 面试指南
### 备战面试
### 备战面试
*
[
【备战面试1】程序员的简历就该这样写
](
./
EssentialContentForI
nterview/PreparingForInterview/程序员的简历之道.md
)
*
[
【备战面试1】程序员的简历就该这样写
](
./
essential-content-for-i
nterview/PreparingForInterview/程序员的简历之道.md
)
*
[
【备战面试2】初出茅庐的程序员该如何准备面试?
](
./
EssentialContentForI
nterview/PreparingForInterview/interviewPrepare.md
)
*
[
【备战面试2】初出茅庐的程序员该如何准备面试?
](
./
essential-content-for-i
nterview/PreparingForInterview/interviewPrepare.md
)
*
[
【备战面试3】7个大部分程序员在面试前很关心的问题
](
./
EssentialContentForI
nterview/PreparingForInterview/JavaProgrammerNeedKnow.md
)
*
[
【备战面试3】7个大部分程序员在面试前很关心的问题
](
./
essential-content-for-i
nterview/PreparingForInterview/JavaProgrammerNeedKnow.md
)
*
[
【备战面试4】Java程序员必备书单
](
./
EssentialContentForI
nterview/PreparingForInterview/books.md
)
*
[
【备战面试4】Java程序员必备书单
](
./
essential-content-for-i
nterview/PreparingForInterview/books.md
)
*
[
【备战面试5】Github上开源的Java面试/学习相关的仓库推荐
](
./
EssentialContentForI
nterview/PreparingForInterview/JavaInterviewLibrary.md
)
*
[
【备战面试5】Github上开源的Java面试/学习相关的仓库推荐
](
./
essential-content-for-i
nterview/PreparingForInterview/JavaInterviewLibrary.md
)
*
[
【备战面试6】如果面试官问你“你有什么问题问我吗?”时,你该如何回答
](
./
EssentialContentForI
nterview/PreparingForInterview/如果面试官问你“你有什么问题问我吗?”时,你该如何回答.md
)
*
[
【备战面试6】如果面试官问你“你有什么问题问我吗?”时,你该如何回答
](
./
essential-content-for-i
nterview/PreparingForInterview/如果面试官问你“你有什么问题问我吗?”时,你该如何回答.md
)
*
[
【备战面试7】美团面试常见问题总结(附详解答案)
](
./
EssentialContentForI
nterview/PreparingForInterview/美团面试常见问题总结.md
)
*
[
【备战面试7】美团面试常见问题总结(附详解答案)
](
./
essential-content-for-i
nterview/PreparingForInterview/美团面试常见问题总结.md
)
### 常见面试题总结
### 常见面试题总结
*
[
第一周(2018-8-7)
](
./
EssentialContentForI
nterview/MostCommonJavaInterviewQuestions/第一周(2018-8-7).md
)
(
为什么
Java 中只有值传递、==与equals、 hashCode与equals)
*
[
第一周(2018-8-7)
](
./
essential-content-for-i
nterview/MostCommonJavaInterviewQuestions/第一周(2018-8-7).md
)
(
为什么
Java 中只有值传递、==与equals、 hashCode与equals)
*
[
第二周(2018-8-13)
](
./
EssentialContentForI
nterview/MostCommonJavaInterviewQuestions/第二周(2018-8-13
)
.md)(String和StringBuffer、StringBuilder的区别是什么?String为什么是不可变的?、什么是反射机制?反射机制的应用场景有哪些?......)
*
[
第二周(2018-8-13)
](
./
essential-content-for-i
nterview/MostCommonJavaInterviewQuestions/第二周(2018-8-13
)
.md)(String和StringBuffer、StringBuilder的区别是什么?String为什么是不可变的?、什么是反射机制?反射机制的应用场景有哪些?......)
*
[
第三周(2018-08-22)
](
./
J
ava/这几道Java集合框架面试题几乎必问.md
)
(Arraylist 与 LinkedList 异同、ArrayList 与 Vector 区别、HashMap的底层实现、HashMap 和 Hashtable 的区别、HashMap 的长度为什么是2的幂次方、HashSet 和 HashMap 区别、ConcurrentHashMap 和 Hashtable 的区别、ConcurrentHashMap线程安全的具体实现方式/底层具体实现、集合框架底层数据结构总结)
*
[
第三周(2018-08-22)
](
./
j
ava/这几道Java集合框架面试题几乎必问.md
)
(Arraylist 与 LinkedList 异同、ArrayList 与 Vector 区别、HashMap的底层实现、HashMap 和 Hashtable 的区别、HashMap 的长度为什么是2的幂次方、HashSet 和 HashMap 区别、ConcurrentHashMap 和 Hashtable 的区别、ConcurrentHashMap线程安全的具体实现方式/底层具体实现、集合框架底层数据结构总结)
*
[
第四周(2018-8-30).md
](
./
EssentialContentForI
nterview/MostCommonJavaInterviewQuestions/第四周(2018-8-30
)
.md) (主要内容是几道面试常问的多线程基础题。)
*
[
第四周(2018-8-30).md
](
./
essential-content-for-i
nterview/MostCommonJavaInterviewQuestions/第四周(2018-8-30
)
.md) (主要内容是几道面试常问的多线程基础题。)
### 面经
### 面经
-
[
5面阿里,终获offer(2018年秋招)
](
./
EssentialContentForI
nterview/BATJrealInterviewExperience/5面阿里,终获offer.md
)
-
[
5面阿里,终获offer(2018年秋招)
](
./
essential-content-for-i
nterview/BATJrealInterviewExperience/5面阿里,终获offer.md
)
## 工具
## 工具
### Git
### Git
*
[
Git入门看这一篇就够了
](
./DevelopCommonTools/GitIntroduce.md
)
*
[
Git入门
](
./tools/Git.md
)
### Docker
*
[
Docker 入门
](
./tools/Docker.md
)
## 资料
## 资料
### 书单
### 书单
-
[
Java程序员必备书单
](
./
EssentialContentForInterview
/PreparingForInterview/books.md
)
-
[
Java程序员必备书单
](
./
essential-content-for-interview/
/PreparingForInterview/books.md
)
## 闲谈
## 闲谈
...
...
docs/README.md
已删除
100644 → 0
浏览文件 @
19bd7cd3
<h1
align=
"center"
>
Java 学习/面试指南
</h1>
<p
align=
"center"
>
<img
src=
"https://my-blog-to-use.oss-cn-beijing.aliyuncs.com/2019-3/logo - 副本.png"
width=
""
/>
</p>
<p
align=
"center"
>
<a
href=
"#联系我"
><img
src=
"https://img.shields.io/badge/chat-微信群-blue.svg"
alt=
"微信群"
></a>
<a
href=
"https://gitee.com/SnailClimb/JavaGuide"
><img
src=
"https://img.shields.io/badge/%E7%A0%81%E4%BA%91-SnailClimb-brightgreen.svg"
alt=
"码云地址"
></a>
<a
href=
"#公众号"
><img
src=
"https://img.shields.io/badge/%E5%85%AC%E4%BC%97%E5%8F%B7-JavaGuide-lightgrey.svg"
alt=
"公众号"
></a>
<a
href=
"#公众号"
><img
src=
"https://img.shields.io/badge/PDF-Java面试突击-important.svg"
alt=
"公众号"
></a>
<h2
align=
"center"
>
Special Sponsors
</h2>
</p>
<p
align=
"center"
>
<a
href=
"https://e.coding.net/?utm_source=JavaGuide"
target=
"_blank"
>
<img
src=
"https://my-blog-to-use.oss-cn-beijing.aliyuncs.com/2019-3/Coding Devops.png"
width=
""
/>
</a>
</p>
1.
**码云地址:**
如果访问速度比较慢的话,可以考虑访问本仓库的码云地址:
<https://gitee.com/SnailClimb/JavaGuide>
,Gitee 和 都是同步更新的。
1.
**关于贡献者:**
对本仓库提过有价值的 issue 或 pr 的小伙伴将出现在
[
Contributor
](
#Contributor
)
这里。
1.
**欢迎投稿:**
由于我个人能力有限,很多知识点我可能没有涉及到,所以你可以对其他知识点进行补充。
**对于不错的原创文章我根据你的选择给予现金(50-300)、付费专栏或者任选书籍进行奖励!所以,快提 pr 或者邮件的方式(邮件地址在主页)给我投稿吧!**
当然,我觉得奖励是次要的,最重要的是你可以从自己整理知识点的过程中学习到很多知识。
## 目录
-
[
Java
](
#java
)
-
[
基础
](
#基础
)
-
[
容器
](
#容器
)
-
[
并发
](
#并发
)
-
[
JVM
](
#jvm
)
-
[
I/O
](
#io
)
-
[
Java 8
](
#java-8
)
-
[
网络
](
#网络
)
-
[
操作系统
](
#操作系统
)
-
[
Linux相关
](
#linux相关
)
-
[
数据结构与算法
](
#数据结构与算法
)
-
[
数据结构
](
#数据结构
)
-
[
算法
](
#算法
)
-
[
数据存储
](
#数据存储
)
-
[
MySQL
](
#mysql
)
-
[
Redis
](
#redis
)
-
[
系统设计
](
#系统设计
)
-
[
设计模式
](
#设计模式
)
-
[
常用框架
](
#常用框架
)
-
[
数据通信
](
#数据通信
)
-
[
网站架构
](
#网站架构
)
-
[
面试指南
](
#面试指南
)
-
[
备战面试
](
#备战面试
)
-
[
常见面试题总结
](
#常见面试题总结
)
-
[
面经
](
#面经
)
-
[
工具
](
#工具
)
-
[
Git
](
#git
)
-
[
Docker
](
#Docker
)
-
[
资料
](
#资料
)
-
[
书单
](
#书单
)
-
[
闲谈
](
#闲谈
)
-
[
待办
](
#待办
)
-
[
说明
](
#说明
)
## Java
### 基础
*
[
Java 基础知识回顾
](
./Java/Java基础知识.md
)
*
[
J2EE 基础知识回顾
](
./Java/J2EE基础知识.md
)
*
[
Collections 工具类和 Arrays 工具类常见方法
](
./Java/Basis/Arrays%2CCollectionsCommonMethods.md
)
*
[
Java常见关键字总结:static、final、this、super
](
./Java/Basis/final、static、this、super.md
)
### 容器
*
**常见问题总结:**
*
[
这几道Java集合框架面试题几乎必问
](
./Java/这几道Java集合框架面试题几乎必问.md
)
*
[
Java 集合框架常见面试题总结
](
./Java/Java集合框架常见面试题总结.md
)
*
**源码分析:**
*
[
ArrayList 源码学习
](
./Java/ArrayList.md
)
*
[
【面试必备】透过源码角度一步一步带你分析 ArrayList 扩容机制
](
./Java/ArrayList-Grow.md
)
*
[
LinkedList 源码学习
](
./Java/LinkedList.md
)
*
[
HashMap(JDK1.8)源码学习
](
./Java/HashMap.md
)
### 并发
*
[
并发编程面试必备:synchronized 关键字使用、底层原理、JDK1.6 之后的底层优化以及 和ReenTrantLock 的对比
](
./Java/synchronized.md
)
*
[
并发编程面试必备:乐观锁与悲观锁
](
./EssentialContentForInterview/面试必备之乐观锁与悲观锁.md
)
*
[
并发编程面试必备:JUC 中的 Atomic 原子类总结
](
./Java/Multithread/Atomic.md
)
*
[
并发编程面试必备:AQS 原理以及 AQS 同步组件总结
](
./Java/Multithread/AQS.md
)
*
[
BATJ都爱问的多线程面试题
](
./Java/Multithread/BATJ都爱问的多线程面试题.md
)
*
[
并发容器总结
](
./Java/Multithread/并发容器总结.md
)
### JVM
*
[
可能是把Java内存区域讲的最清楚的一篇文章
](
./Java/可能是把Java内存区域讲的最清楚的一篇文章.md
)
*
[
搞定JVM垃圾回收就是这么简单
](
./Java/搞定JVM垃圾回收就是这么简单.md
)
*
[
《深入理解Java虚拟机》第2版学习笔记
](
./Java/Java虚拟机(jvm).md
)
### I/O
*
[
BIO,NIO,AIO 总结
](
./Java/BIO%2CNIO%2CAIO%20summary.md
)
*
[
Java IO 与 NIO系列文章
](
./Java/Java%20IO与NIO.md
)
### Java 8
*
[
Java 8 新特性总结
](
./Java/What's%20New%20in%20JDK8/Java8Tutorial.md
)
## 网络
*
[
计算机网络常见面试题
](
./计算机网络与数据通信/计算机网络.md
)
*
[
计算机网络基础知识总结
](
./计算机网络与数据通信/干货:计算机网络知识总结.md
)
*
[
HTTPS中的TLS
](
./计算机网络与数据通信/HTTPS中的TLS.md
)
## 操作系统
### Linux相关
*
[
后端程序员必备的 Linux 基础知识
](
./操作系统/后端程序员必备的Linux基础知识.md
)
*
[
Shell 编程入门
](
./操作系统/Shell.md
)
## 数据结构与算法
### 数据结构
-
[
数据结构知识学习与面试
](
./数据结构与算法/数据结构.md
)
### 算法
-
[
算法学习与面试
](
./数据结构与算法/算法.md
)
-
[
算法总结——几道常见的子符串算法题
](
./数据结构与算法/搞定BAT面试——几道常见的子符串算法题.md
)
-
[
算法总结——几道常见的链表算法题
](
./数据结构与算法/Leetcode-LinkList1.md
)
-
[
常见安全算法(MD5、SHA1、Base64等等)总结
](
./数据结构与算法/常见安全算法(MD5、SHA1、Base64等等)总结.md
)
## 数据存储
### MySQL
*
[
MySQL 学习与面试
](
./数据存储/MySQL.md
)
*
[
【思维导图-索引篇】搞定数据库索引就是这么简单
](
./数据存储/MySQL%20Index.md
)
*
[
一千行MySQL学习笔记
](
./数据存储/一千行MySQL命令.md
)
### Redis
*
[
Redis 总结
](
./数据存储/Redis/Redis.md
)
*
[
Redlock分布式锁
](
./数据存储/Redis/Redlock分布式锁.md
)
*
[
如何做可靠的分布式锁,Redlock真的可行么
](
./数据存储/Redis/如何做可靠的分布式锁,Redlock真的可行么.md
)
## 系统设计
### 设计模式
-
[
设计模式系列文章
](
./Java/设计模式.md
)
### 常用框架
#### Spring
-
[
Spring 学习与面试
](
./主流框架/Spring学习与面试.md
)
-
[
Spring中bean的作用域与生命周期
](
./主流框架/SpringBean.md
)
-
[
SpringMVC 工作原理详解
](
./主流框架/SpringMVC%20%E5%B7%A5%E4%BD%9C%E5%8E%9F%E7%90%86%E8%AF%A6%E8%A7%A3.md
)
#### ZooKeeper
-
[
可能是把 ZooKeeper 概念讲的最清楚的一篇文章
](
./主流框架/ZooKeeper.md
)
-
[
ZooKeeper 数据模型和常见命令了解一下,速度收藏!
](
./主流框架/ZooKeeper数据模型和常见命令.md
)
### 数据通信
-
[
数据通信(RESTful、RPC、消息队列)相关知识点总结
](
./计算机网络与数据通信/数据通信(RESTful、RPC、消息队列
)
.md)
-
[
Dubbo 总结:关于 Dubbo 的重要知识点
](
./计算机网络与数据通信/dubbo.md
)
-
[
消息队列总结:新手也能看懂,消息队列其实很简单
](
./计算机网络与数据通信/message-queue.md
)
-
[
一文搞懂 RabbitMQ 的重要概念以及安装
](
./计算机网络与数据通信/rabbitmq.md
)
### 网站架构
-
[
一文读懂分布式应该学什么
](
./架构/分布式.md
)
-
[
8 张图读懂大型网站技术架构
](
./架构/8%20张图读懂大型网站技术架构.md
)
-
[
【面试精选】关于大型网站系统架构你不得不懂的10个问题
](
./架构/[面试精选]关于大型网站系统架构你不得不懂的10个问题.md
)
## 面试指南
### 备战面试
*
[
【备战面试1】程序员的简历就该这样写
](
./EssentialContentForInterview/PreparingForInterview/程序员的简历之道.md
)
*
[
【备战面试2】初出茅庐的程序员该如何准备面试?
](
./EssentialContentForInterview/PreparingForInterview/interviewPrepare.md
)
*
[
【备战面试3】7个大部分程序员在面试前很关心的问题
](
./EssentialContentForInterview/PreparingForInterview/JavaProgrammerNeedKnow.md
)
*
[
【备战面试4】Java程序员必备书单
](
./EssentialContentForInterview/PreparingForInterview/books.md
)
*
[
【备战面试5】Github上开源的Java面试/学习相关的仓库推荐
](
./EssentialContentForInterview/PreparingForInterview/JavaInterviewLibrary.md
)
*
[
【备战面试6】如果面试官问你“你有什么问题问我吗?”时,你该如何回答
](
./EssentialContentForInterview/PreparingForInterview/如果面试官问你“你有什么问题问我吗?”时,你该如何回答.md
)
*
[
【备战面试7】美团面试常见问题总结(附详解答案)
](
./EssentialContentForInterview/PreparingForInterview/美团面试常见问题总结.md
)
### 常见面试题总结
*
[
第一周(2018-8-7)
](
./EssentialContentForInterview/MostCommonJavaInterviewQuestions/第一周(2018-8-7).md
)
(
为什么
Java 中只有值传递、==与equals、 hashCode与equals)
*
[
第二周(2018-8-13)
](
./EssentialContentForInterview/MostCommonJavaInterviewQuestions/第二周(2018-8-13
)
.md)(String和StringBuffer、StringBuilder的区别是什么?String为什么是不可变的?、什么是反射机制?反射机制的应用场景有哪些?......)
*
[
第三周(2018-08-22)
](
./Java/这几道Java集合框架面试题几乎必问.md
)
(Arraylist 与 LinkedList 异同、ArrayList 与 Vector 区别、HashMap的底层实现、HashMap 和 Hashtable 的区别、HashMap 的长度为什么是2的幂次方、HashSet 和 HashMap 区别、ConcurrentHashMap 和 Hashtable 的区别、ConcurrentHashMap线程安全的具体实现方式/底层具体实现、集合框架底层数据结构总结)
*
[
第四周(2018-8-30).md
](
./EssentialContentForInterview/MostCommonJavaInterviewQuestions/第四周(2018-8-30
)
.md) (主要内容是几道面试常问的多线程基础题。)
### 面经
-
[
5面阿里,终获offer(2018年秋招)
](
./EssentialContentForInterview/BATJrealInterviewExperience/5面阿里,终获offer.md
)
## 工具
### Git
*
[
Git入门
](
./Tools/Git.md
)
### Docker
*
[
Docker 入门
](
./Tools/Docker.md
)
## 资料
### 书单
-
[
Java程序员必备书单
](
./EssentialContentForInterview/PreparingForInterview/books.md
)
## 闲谈
*
[
选择技术方向都要考虑哪些因素
](
./闲谈/选择技术方向都要考虑哪些因素.md
)
*
[
结束了我短暂的秋招,说点自己的感受
](
./闲谈/2018%20%E7%A7%8B%E6%8B%9B.md
)
*
[
Java项目 Github Trending 月榜
](
./闲谈/JavaGithubTrending/JavaGithubTrending.md
)
***
## 待办
-
[
x] [Java 8 新特性总结
](
./Java/What's%20New%20in%20JDK8/Java8Tutorial.md
)
-
[ ] Java 8 新特性详解
-
[ ] Java 多线程类别知识重构
-
[
x] [BIO,NIO,AIO 总结
](
./Java/BIO%2CNIO%2CAIO%20summary.md
)
-
[ ] Netty 总结
-
[ ] 数据结构总结重构
## 说明
### 介绍
*
**对于 Java 初学者来说:**
本文档倾向于给你提供一个比较详细的学习路径,让你对于Java整体的知识体系有一个初步认识。另外,本文的一些文章
也是你学习和复习 Java 知识不错的实践;
*
**对于非 Java 初学者来说:**
本文档更适合回顾知识,准备面试,搞清面试应该把重心放在那些问题上。要搞清楚这个道理:提前知道那些面试常见,不是为了背下来应付面试,而是为了让你可以更有针对的学习重点。
本文档 Markdown 格式参考:
[
Github Markdown格式
](
https://guides.github.com/features/mastering-markdown/
)
,表情素材来自:
[
EMOJI CHEAT SHEET
](
https://www.webpagefx.com/tools/emoji-cheat-sheet/
)
。
### 关于转载
如果你需要转载本仓库的一些文章到自己的博客的话,记得注明原文地址就可以了。
### 如何对该开源文档进行贡献
1.
笔记内容大多是手敲,所以难免会有笔误,你可以帮我找错别字。
2.
很多知识点我可能没有涉及到,所以你可以对其他知识点进行补充。(
**对于不错的原创文章我根据你的选择给予现金奖励、付费专栏或者书籍进行奖励!快提 pr 给我投稿吧!**
)
3.
现有的知识点难免存在不完善或者错误,所以你可以对已有知识点的修改/补充。
### 为什么要做这个开源文档?
初始想法源于自己的个人那一段比较迷茫的学习经历。主要目的是为了通过这个开源平台来帮助一些在学习 Java 或者面试过程中遇到问题的小伙伴。
### 联系我
添加我的微信备注“Github”,回复关键字
**“加群”**
即可入群。
![
我的微信
](
https://my-blog-to-use.oss-cn-beijing.aliyuncs.com/2019-2/JavaGuide.jpg
)
### Contributor
下面是笔主收集的一些对本仓库提过有价值的pr或者issue的朋友,人数较多,如果你也对本仓库提过不错的pr或者issue的话,你可以加我的微信与我联系。下面的排名不分先后!
<a
href=
"https://github.com/fanofxiaofeng"
>
<img
src=
"https://avatars0.githubusercontent.com/u/3983683?s=460&v=4"
width=
"45px"
></a>
<a
href=
"https://github.com/Gene1994"
>
<img
src=
"https://avatars3.githubusercontent.com/u/24930369?s=460&v=4"
width=
"45px"
>
</a>
<a
href=
"https://github.com/illusorycloud"
>
<img
src=
"https://avatars3.githubusercontent.com/u/31980412?s=460&v=4"
width=
"45px"
>
</a>
<a
href=
"https://github.com/LiWenGu"
>
<img
src=
"https://avatars0.githubusercontent.com/u/15909210?s=460&v=4"
width=
"45px"
>
</a>
<a
href=
"https://github.com/kinglaw1204"
>
<img
src=
"https://avatars1.githubusercontent.com/u/20039931?s=460&v=4"
width=
"45px"
>
</a>
<a
href=
"https://github.com/jun1st"
>
<img
src=
"https://avatars2.githubusercontent.com/u/14312378?s=460&v=4"
width=
"45px"
>
</a>
"
<a
href=
"https://github.com/fantasygg"
>
<img
src=
"https://avatars3.githubusercontent.com/u/13445354?s=460&v=4"
width=
"45px"
>
</a>
<a
href=
"https://github.com/debugjoker"
>
<img
src=
"https://avatars3.githubusercontent.com/u/26218005?s=460&v=4"
width=
"45px"
>
</a>
<a
href=
"https://github.com/zhyank"
>
<img
src=
"https://avatars0.githubusercontent.com/u/17696240?s=460&v=4"
width=
"45px"
>
</a>
<a
href=
"https://github.com/Goose9527"
>
<img
src=
"https://avatars2.githubusercontent.com/u/43314997?s=460&v=4"
width=
"45px"
>
</a>
<a
href=
"https://github.com/yuechuanx"
>
<img
src=
"https://avatars3.githubusercontent.com/u/19339293?s=460&v=4"
width=
"45px"
>
</a>
### 公众号
如果大家想要实时关注我更新的文章以及分享的干货的话,可以关注我的公众号。
**《Java面试突击》:**
由本文档衍生的专为面试而生的《Java面试突击》V2.0 PDF 版本
[
公众号
](
#公众号
)
后台回复
**"Java面试突击"**
即可免费领取!
**Java工程师必备学习资源:**
一些Java工程师常用学习资源
[
公众号
](
#公众号
)
后台回复关键字
**“1”**
即可免费无套路获取。
![
我的公众号
](
https://user-gold-cdn.xitu.io/2018/11/28/167598cd2e17b8ec?w=258&h=258&f=jpeg&s=27334
)
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录